aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellEffects.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
-rw-r--r--src/server/game/Spells/SpellEffects.cpp9
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()