aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.dev@gmail.com>2011-01-04 22:41:44 +0100
committerShauren <shauren.dev@gmail.com>2011-01-04 22:41:44 +0100
commit3208b7ae1f11586c3a432e792cf6d83dfbee4f46 (patch)
tree584c5cdb3a8d84f38792f75178603ba1f012e36b /src
parent09a0860717d1808c30adb675219b9d90fb993ae7 (diff)
Core/Auras: Prevent phase aura handler from incorrectly being stopped on aura removal
Closes #32
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Spells/Auras/SpellAuraEffects.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index ffb5d162e89..511dcbb2d41 100755
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -2946,9 +2946,6 @@ void AuraEffect::HandlePhase(AuraApplication const * aurApp, uint8 mode, bool ap
for (Unit::AuraEffectList::const_iterator itr = phases.begin(); itr != phases.end(); ++itr)
newPhase |= (*itr)->GetMiscValue();
- if (apply)
- newPhase |= GetMiscValue();
-
// phase auras normally not expected at BG but anyway better check
if (Player* player = target->ToPlayer())
{
@@ -2961,7 +2958,7 @@ void AuraEffect::HandlePhase(AuraApplication const * aurApp, uint8 mode, bool ap
bg->EventPlayerDroppedFlag(player);
// stop handling the effect if it was removed by linked event
- if (aurApp->GetRemoveMode())
+ if (apply && aurApp->GetRemoveMode())
return;
// GM-mode have mask 0xFFFFFFFF