Core/Spells: Implemented PROC_ATTR_CANT_PROC_FROM_ITEM_CAST

Port From (https://github.com/TrinityCore/TrinityCore/commit/a3cc94080f9e5a246f5d6d64ef8ab5cc929da2ab)
This commit is contained in:
hondacrx
2022-04-28 10:40:19 -04:00
parent 7a7c3a3a1f
commit a167709cdf
2 changed files with 5 additions and 1 deletions
@@ -2546,8 +2546,9 @@ namespace Framework.Constants
ReqSpellmod = 0x08, // requires triggering spell to be affected by proccing aura to drop charges
UseStacksForCharges = 0x10, // consuming proc drops a stack from proccing aura instead of charge
ReduceProc60 = 0x80, // aura should have a reduced chance to proc if level of proc Actor > 60
CantProcFromItemCast = 0x0000100, // do not allow aura proc if proc is caused by a spell casted by item
AllAllowed = ReqExpOrHonor | TriggeredCanProc | ReqPowerCost | ReqSpellmod | UseStacksForCharges | ReduceProc60
AllAllowed = ReqExpOrHonor | TriggeredCanProc | ReqPowerCost | ReqSpellmod | UseStacksForCharges | ReduceProc60 | CantProcFromItemCast
}
// Spell aura states
+3
View File
@@ -1712,6 +1712,9 @@ namespace Game.Spells
if (!GetSpellInfo().HasAttribute(SpellAttr3.CanProcFromProcs) && !procEntry.AttributesMask.HasFlag(ProcAttributes.TriggeredCanProc) && !eventInfo.GetTypeMask().HasFlag(ProcFlags.AutoAttackMask))
if (spell.IsTriggered() && !spell.GetSpellInfo().HasAttribute(SpellAttr3.NotAProc))
return 0;
if (spell.m_CastItem != null && procEntry.AttributesMask.HasFlag(ProcAttributes.CantProcFromItemCast))
return 0;
}
// check don't break stealth attr present