diff options
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
| -rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 9f878275a6e..d90f7cd7342 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2131,6 +2131,8 @@ void Spell::EffectDispel() m_caster->SendMessageToSet(spellDispellLog.Write(), true); CallScriptSuccessfulDispel(SpellEffIndex(effectInfo->EffectIndex)); + + m_hitMask |= PROC_HIT_DISPEL; } void Spell::EffectDualWield() @@ -4105,8 +4107,13 @@ void Spell::EffectDispelMechanic() dispel_list.emplace_back(aura->GetId(), aura->GetCasterGUID()); } + if (dispel_list.empty()) + return; + for (auto itr = dispel_list.begin(); itr != dispel_list.end(); ++itr) unitTarget->RemoveAura(itr->first, itr->second, 0, AURA_REMOVE_BY_ENEMY_SPELL); + + m_hitMask |= PROC_HIT_DISPEL; } void Spell::EffectResurrectPet() @@ -4645,6 +4652,8 @@ void Spell::EffectStealBeneficialBuff() } m_caster->SendMessageToSet(spellDispellLog.Write(), true); + + m_hitMask |= PROC_HIT_DISPEL; } void Spell::EffectKillCreditPersonal() |
