diff options
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r-- | src/game/Spell.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 746336cdcce..e7ca6ff09c2 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -2347,6 +2347,11 @@ void Spell::prepare(SpellCastTargets * targets, Aura* triggeredByAura) cast(true); else { + // 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(isSpellBreakStealth(m_spellInfo) ) + m_caster->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_CAST); + m_caster->SetCurrentCastedSpell( this ); m_selfContainer = &(m_caster->m_currentSpells[GetCurrentContainer()]); SendSpellStart(); @@ -2454,13 +2459,6 @@ void Spell::cast(bool skipCheck) FillTargetMap(); - // 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 ( !m_IsTriggeredSpell && isSpellBreakStealth(m_spellInfo) ) - { - m_caster->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_CAST); - } - // who did this hack? // Conflagrate - consumes immolate if ((m_spellInfo->TargetAuraState == AURA_STATE_IMMOLATE) && m_targets.getUnitTarget()) |