Участник
Пользователь
- Сообщения
- 83
- Реакции
- 7
BalbuR, попробовал так:
Вне зависимости от изменения значения LateralBrassDrop, через postframe гильза вылетает только после истечения времени NextPrimaryAttack.
Код:
LateralBrassDrop = get_gametime() + 0.05(Это значение в ходе тестов я по-разному менял);
...
if(get_entvar(pItem, var_impulse) != WeaponUnicalIndex || LateralBrassDrop == 0.0 || LateralBrassDrop > get_gametime())
{
return HAM_IGNORED;
}
else
{
static pPlayer; pPlayer = get_member(pItem, m_pPlayer);
if(gl_bitUserLeftHanded)
{
UTIL_EjectBrass(pPlayer, WeaponModelShell, 1, 17.0, -12.0, -10.0, 25.0, random_float(65.0, 70.0), random_float(85.0, 90.0));
}
else
{
UTIL_EjectBrass(pPlayer, WeaponModelShell, 1, 17.0, 12.0, -10.0, 25.0, random_float(-65.0, -70.0), random_float(85.0, 90.0));
}
LateralBrassDrop = 0.0;
return HAM_SUPERCEDE;
}
То есть он не срабатывает в течение всего времени проигрывания анимации стрельбы.BalbuR, я глянул, постфрейм же вызывается каждый фрейм, когда оружие не перезаряжается, стреляет или не достается. Это действительно лучше одного set_task'а?