aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2023-08-28 10:12:09 +0200
committerShauren <shauren.trinity@gmail.com>2023-08-28 10:12:09 +0200
commitca16d0800c281e87b309c3b695f67c40d5b1d0f8 (patch)
tree0e7fc92d5ce0c18262a559680e7d7bc59629d21e /src
parentaa278017e8bcb87411b8def5dcceb72d178dfafc (diff)
Core/Spells: Merge TRIGGERED_IGNORE_AURA_INTERRUPT_FLAGS functionality into TRIGGERED_IGNORE_CAST_IN_PROGRESS as they are always used together (and missing one of them in scripts is a common enough mistake)
* Also fixes Ray of Frost being interrupted by casting Shimmer
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Spell.cpp4
-rw-r--r--src/server/game/Spells/SpellDefines.h4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index ff2c0128e07..6e5fc130645 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -3538,7 +3538,7 @@ SpellCastResult Spell::prepare(SpellCastTargets const& targets, AuraEffect const
{
// stealth must be removed at cast starting (at show channel bar)
// skip triggered spell (item equip spell casting and other not explicit character casts/item uses)
- if (!(_triggeredCastFlags & TRIGGERED_IGNORE_AURA_INTERRUPT_FLAGS) && !m_spellInfo->HasAttribute(SPELL_ATTR2_NOT_AN_ACTION))
+ if (!(_triggeredCastFlags & TRIGGERED_IGNORE_CAST_IN_PROGRESS) && !m_spellInfo->HasAttribute(SPELL_ATTR2_NOT_AN_ACTION))
unitCaster->RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags::Action, m_spellInfo);
// Do not register as current spell when requested to ignore cast in progress
@@ -3917,7 +3917,7 @@ void Spell::_cast(bool skipCheck)
if (!(hitMask & PROC_HIT_CRITICAL))
hitMask |= PROC_HIT_NORMAL;
- if (!(_triggeredCastFlags & TRIGGERED_IGNORE_AURA_INTERRUPT_FLAGS) && !m_spellInfo->HasAttribute(SPELL_ATTR2_NOT_AN_ACTION))
+ if (!(_triggeredCastFlags & TRIGGERED_IGNORE_CAST_IN_PROGRESS) && !m_spellInfo->HasAttribute(SPELL_ATTR2_NOT_AN_ACTION))
m_originalCaster->RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags::ActionDelayed, m_spellInfo);
if (!m_spellInfo->HasAttribute(SPELL_ATTR3_SUPPRESS_CASTER_PROCS))
diff --git a/src/server/game/Spells/SpellDefines.h b/src/server/game/Spells/SpellDefines.h
index 2e209838c9f..caa2ef5ddd3 100644
--- a/src/server/game/Spells/SpellDefines.h
+++ b/src/server/game/Spells/SpellDefines.h
@@ -249,10 +249,10 @@ enum TriggerCastFlags : uint32
TRIGGERED_IGNORE_CAST_IN_PROGRESS = 0x00000020, //!< Will not check if a current cast is in progress
// reuse = 0x00000040,
TRIGGERED_CAST_DIRECTLY = 0x00000080, //!< In Spell::prepare, will be cast directly without setting containers for executed spell
- TRIGGERED_IGNORE_AURA_INTERRUPT_FLAGS = 0x00000100, //!< Will ignore interruptible aura's at cast
+ // reuse = 0x00000100,
TRIGGERED_IGNORE_SET_FACING = 0x00000200, //!< Will not adjust facing to target (if any)
TRIGGERED_IGNORE_SHAPESHIFT = 0x00000400, //!< Will ignore shapeshift checks
- // reuse
+ // reuse = 0x00000800,
TRIGGERED_DISALLOW_PROC_EVENTS = 0x00001000, //!< Disallows proc events from triggered spell (default)
TRIGGERED_IGNORE_CASTER_MOUNTED_OR_ON_VEHICLE = 0x00002000, //!< Will ignore mounted/on vehicle restrictions
// reuse = 0x00004000,