diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 8 | ||||
-rwxr-xr-x | src/server/game/Entities/Player/Player.h | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index cff76936aa8..eb1ebb870be 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1244,9 +1244,15 @@ void Player::StopMirrorTimer(MirrorTimerType Type) GetSession()->SendPacket(&data); } +bool Player::IsImmuneToEnvironmentalDamage() +{ + // check for GM and death state included in isAttackableByAOE + return (!isAttackableByAOE()); +} + uint32 Player::EnvironmentalDamage(EnviromentalDamage type, uint32 damage) { - if (!isAlive() || isGameMaster()) + if (IsImmuneToEnvironmentalDamage()) return 0; // Absorb, resist some environmental damage type diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index ead732d93a6..40208983597 100755 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -2753,6 +2753,8 @@ class Player : public Unit, public GridObject<Player> bool IsHasDelayedTeleport() const { return m_bHasDelayedTeleport; } void SetDelayedTeleportFlag(bool setting) { m_bHasDelayedTeleport = setting; } + bool IsImmuneToEnvironmentalDamage(); + void ScheduleDelayedOperation(uint32 operation) { if (operation < DELAYED_END) |