diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-12-14 18:55:25 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-12-16 16:43:23 +0100 |
commit | 4566661d75c01db1a30c1b0e50974c1e03b019e9 (patch) | |
tree | ee9d5e71c43d0f5757fbd3a5c374e773e0d6a065 /src/server/game/Spells/SpellEffects.cpp | |
parent | b3cc2eaaf522c6faaaaafdb17b50274b98bb1b2c (diff) |
Core/Spells: Fixed PROC_HIT_DISPEL and PROC_HIT_INTERRUPT on procs using PROC_SPELL_PHASE_HIT phase
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 775cc515f76..7ea4088a6bf 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2180,7 +2180,7 @@ void Spell::EffectDispel() CallScriptSuccessfulDispel(SpellEffIndex(effectInfo->EffectIndex)); - m_hitMask |= PROC_HIT_DISPEL; + std::ranges::find(m_UniqueTargetInfo, unitTarget->GetGUID(), &TargetInfo::TargetGUID)->ProcHitMask |= PROC_HIT_DISPEL; } void Spell::EffectDualWield() @@ -2936,7 +2936,7 @@ void Spell::EffectInterruptCast() int32 duration = m_spellInfo->GetDuration(); duration = unitTarget->ModSpellDuration(m_spellInfo, unitTarget, duration, false, 1 << effectInfo->EffectIndex); unitTarget->GetSpellHistory()->LockSpellSchool(curSpellInfo->GetSchoolMask(), Milliseconds(duration)); - m_hitMask |= PROC_HIT_INTERRUPT; + std::ranges::find(m_UniqueTargetInfo, unitTarget->GetGUID(), &TargetInfo::TargetGUID)->ProcHitMask |= PROC_HIT_INTERRUPT; SendSpellInterruptLog(unitTarget, curSpellInfo->Id); unitTarget->InterruptSpell(CurrentSpellTypes(i), false); } @@ -4148,7 +4148,7 @@ void Spell::EffectDispelMechanic() 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; + std::ranges::find(m_UniqueTargetInfo, unitTarget->GetGUID(), &TargetInfo::TargetGUID)->ProcHitMask |= PROC_HIT_DISPEL; } void Spell::EffectResurrectPet() @@ -4713,7 +4713,7 @@ void Spell::EffectStealBeneficialBuff() m_caster->SendMessageToSet(spellDispellLog.Write(), true); - m_hitMask |= PROC_HIT_DISPEL; + std::ranges::find(m_UniqueTargetInfo, unitTarget->GetGUID(), &TargetInfo::TargetGUID)->ProcHitMask |= PROC_HIT_DISPEL; } void Spell::EffectKillCreditPersonal() |