From 78ca3ad5d2e827dadf7c46a2b3f068db0325a656 Mon Sep 17 00:00:00 2001 From: hacknowledge Date: Sat, 13 Aug 2011 23:58:33 +0200 Subject: [PATCH 1/2] 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(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index cff76936aa..eb1ebb870b 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 ead732d93a..4020898359 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) From 1aa4e7bd5762e7d8e9264879a5abb5a99ff75aec Mon Sep 17 00:00:00 2001 From: hacknowledge Date: Sun, 14 Aug 2011 00:00:19 +0200 Subject: [PATCH 2/2] converted tab to spaces --- src/server/game/Entities/Player/Player.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index eb1ebb870b..86b6e77525 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1246,7 +1246,7 @@ void Player::StopMirrorTimer(MirrorTimerType Type) bool Player::IsImmuneToEnvironmentalDamage() { - // check for GM and death state included in isAttackableByAOE + // check for GM and death state included in isAttackableByAOE return (!isAttackableByAOE()); }