From a18151b9ef39db22542944b0937461648bde7421 Mon Sep 17 00:00:00 2001 From: Hondacrx Date: Tue, 12 Aug 2025 21:30:34 -0400 Subject: [PATCH] Core/Auras: Support PROC_ATTR_REQ_SPELLMOD for procs using PROC_ATTR_USE_STACKS_FOR_CHARGES Port From (https://github.com/TrinityCore/TrinityCore/commit/5759ac1c9416675fc745484d7e915f64765a5b38) --- Source/Game/Spells/Auras/Aura.cs | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/Source/Game/Spells/Auras/Aura.cs b/Source/Game/Spells/Auras/Aura.cs index c49e284a3..3796032f9 100644 --- a/Source/Game/Spells/Auras/Aura.cs +++ b/Source/Game/Spells/Auras/Aura.cs @@ -1768,20 +1768,17 @@ namespace Game.Spells } // check if we have charges to proc with - if (IsUsingCharges()) - { - if (GetCharges() == 0) - return 0; + if (IsUsingCharges() && GetCharges() == 0) + return 0; - if (procEntry.AttributesMask.HasAnyFlag(ProcAttributes.ReqSpellmod)) - { - Spell eventSpell = eventInfo.GetProcSpell(); - if (eventSpell != null) - if (!eventSpell.m_appliedMods.Contains(this)) - return 0; - } + if (procEntry.AttributesMask.HasAnyFlag(ProcAttributes.ReqSpellmod) && (IsUsingCharges() || (procEntry.AttributesMask & ProcAttributes.UseStacksForCharges) != 0)) + { + Spell eventSpell = eventInfo.GetProcSpell(); + if (eventSpell != null && !eventSpell.m_appliedMods.Contains(this)) + return 0; } + // check proc cooldown if (IsProcOnCooldown(now)) return 0;