Скриптер
Участник
Пользователь
- Сообщения
- 99
- Реакции
- 75
- Помог
- 1 раз(а)
Здравствуйте, у меня есть это в моем плагине, но он имеет некоторую задержку при переходе от одной сущности к другой.
Смотрите задержку в видео.
Зарегистрированное событие:
Остальной код с проблемами:
Video: YouTube
P.S. Если я попробую плагин, который сделает это, проблем не будет, проблема только в моем коде.
Смотрите задержку в видео.
Зарегистрированное событие:
Код:
RegisterHam(Ham_Item_Deploy, g_szWeaponEntName[i], "Ham_Item_Deploy_Post", 1);
Код:
public Ham_Item_Deploy_Post(ent)
{
static iPlayer, weapon; iPlayer = get_pdata_cbase(ent, 41, 4);
if (!is_user_alive(iPlayer)) return HAM_IGNORED;
//set_pev(iPlayer, pev_body, iBodyIndex[iPlayer]);
set_task(0.1, "DeployWeaponSwitch", iPlayer); //Set with a bit delay to prevent bug, m_flLastEventCheck need delay too
}
public DeployWeaponSwitch(id)
{
if (!is_user_alive(id)) return PLUGIN_CONTINUE;
new weapon = get_pdata_cbase(id, 373, 5);
new weaponid = cs_get_weapon_id(weapon);
new userskin = g_iUserSelectedSkin[id][weaponid];
if (!weapon || !pev_valid(weapon)) return;
new model[48];
if (userskin > -1 && g_bLogged[id])
{
ArrayGetString(g_aSkinModel, userskin, model, 47);
set_pev(id, pev_viewmodel2, model);
iBodyIndex[id] = ArrayGetCell(g_aSkinSubModel, userskin);
if (g_bSkinHasModelP[userskin])
{
ArrayGetString(g_aSkinModelP, userskin, model, 47);
set_pev(id, pev_weaponmodel2, model);
}
}
if (g_szDefaultSkinModel[weaponid][0] && userskin == -1)
{
set_pev(id, pev_viewmodel2, g_szDefaultSkinModel[weaponid]);
if (0 < strlen(g_szDefaultPSkinModel[weaponid][0]))
{
set_pev(id, pev_weaponmodel2, g_szDefaultPSkinModel[weaponid]);
}
}
set_pdata_float(weapon, m_flLastEventCheck, get_gametime() + 0.001, XO_WEAPON); //0.001 is good enough
SendWeaponAnim(id, iBodyIndex[id], IDLE_ANIM); //Slow message
}
P.S. Если я попробую плагин, который сделает это, проблем не будет, проблема только в моем коде.