From 78ca3ad5d2e827dadf7c46a2b3f068db0325a656 Mon Sep 17 00:00:00 2001 From: hacknowledge Date: Sat, 13 Aug 2011 23:58:33 +0200 Subject: Core/Spells Disables environmental damage to spirit of redemption form of priest Core: Added check for AOE attackability to environmental damage Fixes #2531 Reduced check for environmental damage to whether unit is attackable by AOE. check for GM and death state is included in this check Fixes #2531 --- src/server/game/Entities/Player/Player.cpp | 8 +++++++- src/server/game/Entities/Player/Player.h | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'src') 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 bool IsHasDelayedTeleport() const { return m_bHasDelayedTeleport; } void SetDelayedTeleportFlag(bool setting) { m_bHasDelayedTeleport = setting; } + bool IsImmuneToEnvironmentalDamage(); + void ScheduleDelayedOperation(uint32 operation) { if (operation < DELAYED_END) -- cgit v1.2.3