fix(Core/Spells): Add proc chain guard and TAKEN auto-trigger logic (#24966)

Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
Co-authored-by: ariel- <ariel-@users.noreply.github.com>
This commit is contained in:
blinkysc
2026-03-02 13:19:29 -06:00
committed by GitHub
parent dd6f32d54d
commit 361595e6c2
3 changed files with 756 additions and 0 deletions

View File

@@ -2029,6 +2029,24 @@ void SpellMgr::LoadSpellProcs()
if (!addTriggerFlag && isAlwaysTriggeredAura[auraName])
addTriggerFlag = true;
// Many proc auras with taken procFlag mask don't have
// attribute "can proc with triggered" — they should
// proc nevertheless (e.g. mage armor spells with
// judgement)
if (!addTriggerFlag
&& (spellInfo->ProcFlags & TAKEN_HIT_PROC_FLAG_MASK))
{
switch (auraName)
{
case SPELL_AURA_PROC_TRIGGER_SPELL:
case SPELL_AURA_PROC_TRIGGER_DAMAGE:
addTriggerFlag = true;
break;
default:
break;
}
}
}
if (!found)