mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-03-16 05:55:07 +00:00
fix(Core/Spells): revert CAST proc ordering and add ApplySpellMod recursion guard (#24990)
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
This commit is contained in:
@@ -959,11 +959,23 @@ class spell_mage_fingers_of_frost : public AuraScript
|
||||
|
||||
void PrepareProc(ProcEventInfo& eventInfo)
|
||||
{
|
||||
// Block channeled spells (e.g. Blizzard channel start) from consuming charges.
|
||||
// All other filtering is handled by SpellPhaseMask=1 (CAST only) in spell_proc.
|
||||
if (Spell const* spell = eventInfo.GetProcSpell())
|
||||
if (spell->GetSpellInfo()->IsChanneled())
|
||||
{
|
||||
bool isTriggered = spell->IsTriggered();
|
||||
bool isCastPhase = (eventInfo.GetSpellPhaseMask() & PROC_SPELL_PHASE_CAST) != 0;
|
||||
bool isChanneled = spell->GetSpellInfo()->IsChanneled();
|
||||
bool prevent = false;
|
||||
|
||||
if (isTriggered)
|
||||
prevent = false;
|
||||
else if (isChanneled)
|
||||
prevent = true;
|
||||
else if (!isCastPhase)
|
||||
prevent = true;
|
||||
|
||||
if (prevent)
|
||||
PreventDefaultAction();
|
||||
}
|
||||
}
|
||||
|
||||
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
|
||||
|
||||
Reference in New Issue
Block a user