From 206369934aecfcac9a49583f3f7e98f0d69ad55b Mon Sep 17 00:00:00 2001 From: Shauren Date: Mon, 22 May 2023 18:55:17 +0200 Subject: Core/Spells: Implemented new proc hit type PROC_HIT_DISPEL --- src/server/game/Spells/SpellEffects.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/server/game/Spells/SpellEffects.cpp') 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() -- cgit v1.2.3