Core/Spells: Fixed PROC_HIT_DISPEL and PROC_HIT_INTERRUPT on procs using PROC_SPELL_PHASE_HIT phase

This commit is contained in:
Shauren
2024-12-14 18:55:25 +01:00
parent f92b5316ab
commit 0706a114bb
3 changed files with 14 additions and 14 deletions

View File

@@ -2182,7 +2182,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()
@@ -2938,7 +2938,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);
}
@@ -4176,7 +4176,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()
@@ -4741,7 +4741,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()