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)
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user