Core/Creatures: Implemented unkillable flag (prevent health from going below 1)

Port From (https://github.com/TrinityCore/TrinityCore/commit/7ea438ebdca93874776e02e9985db1da0a53f2fb)
This commit is contained in:
hondacrx
2023-03-14 02:09:28 -04:00
parent 4d1337eed9
commit 89a3cb971a
2 changed files with 12 additions and 0 deletions
@@ -3187,6 +3187,14 @@ namespace Game.Entities
public override void SetImmuneToPC(bool apply) { SetImmuneToPC(apply, HasReactState(ReactStates.Passive)); }
public override void SetImmuneToNPC(bool apply) { SetImmuneToNPC(apply, HasReactState(ReactStates.Passive)); }
void SetUnkillable(bool unkillable)
{
if (unkillable)
_staticFlags |= CreatureStaticFlags.Unkillable;
else
_staticFlags &= ~CreatureStaticFlags.Unkillable;
}
public bool IsInEvadeMode() { return HasUnitState(UnitState.Evade); }
public bool IsEvadingAttacks() { return IsInEvadeMode() || CanNotReachTarget(); }