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:
hondacrx
2022-05-05 09:54:37 -04:00
parent 09a4e13453
commit fcdcb69fe5
2 changed files with 5 additions and 1 deletions
@@ -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,
+4
View File
@@ -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);