Core/Spells: Implement CAST_FLAG_EX_IGNORE_COOLDOWN - causes spells to not automatically trigger cooldown clientside
Port From (https://github.com/TrinityCore/TrinityCore/commit/66509502f4a5065d74cb3da501558f7eff6ea1ec)
This commit is contained in:
@@ -1557,7 +1557,7 @@ namespace Framework.Constants
|
||||
Unknown7 = 0x40,
|
||||
Unknown8 = 0x80,
|
||||
Unknown9 = 0x100,
|
||||
Unknown10 = 0x200,
|
||||
IgnoreCooldown = 0x200, // makes client not automatically start cooldown after SPELL_GO
|
||||
Unknown11 = 0x400,
|
||||
Unknown12 = 0x800,
|
||||
Unknown13 = 0x1000,
|
||||
|
||||
@@ -43,6 +43,10 @@ namespace Game.Spells
|
||||
m_caster = (info.HasAttribute(SpellAttr6.CastByCharmer) && caster.GetCharmerOrOwner() != null ? caster.GetCharmerOrOwner() : caster);
|
||||
m_spellValue = new SpellValue(m_spellInfo, caster);
|
||||
m_castItemLevel = -1;
|
||||
|
||||
if (IsIgnoringCooldowns())
|
||||
m_castFlagsEx |= SpellCastFlagsEx.IgnoreCooldown;
|
||||
|
||||
m_castId = ObjectGuid.Create(HighGuid.Cast, SpellCastSource.Normal, m_caster.GetMapId(), m_spellInfo.Id, m_caster.GetMap().GenerateLowGuid(HighGuid.Cast));
|
||||
m_originalCastId = originalCastId;
|
||||
m_SpellVisual.SpellXSpellVisualID = caster.GetCastSpellXSpellVisualId(m_spellInfo);
|
||||
|
||||
Reference in New Issue
Block a user