Всем привет.
Столкнулся с простой задачей - блокировать полностью событие урона самому себе и от сервера (к примеру урон от токсичности, воды и т.п.)
Урон блочу так:
Есть ли универсальный способ запретить дальнейший вызов сопутствующих событию получения урона функций, а именно:
Костылями это сделать можно (вроде проверки в Think'е), но возможно есть способ проще?
Столкнулся с простой задачей - блокировать полностью событие урона самому себе и от сервера (к примеру урон от токсичности, воды и т.п.)
Урон блочу так:
C-like:
RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Pre", .post = false);
public CPlayer_TakeDamage_Pre(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType)
{
if ((iVictim==iAttacker) || (iAttacker)==0)
{
SetHookChainArg(4,ATYPE_FLOAT, 0.0)
return HC_SUPERCEDE;
}
//....
return HC_CONTINUE
}
- при падении с высоты не воспроизводить звук приземления
- при получении урона от долгого нахождения в воде запретить дальнейший реген HP
Костылями это сделать можно (вроде проверки в Think'е), но возможно есть способ проще?