diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Spell.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 66e0a2e1e68..abdeeb275b5 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -2097,17 +2097,14 @@ void Spell::prepare(SpellCastTargets * targets, Aura* triggeredByAura) if(isSpellBreakStealth(m_spellInfo) ) m_caster->RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_CAST); + m_caster->SetCurrentCastedSpell( this ); + m_selfContainer = &(m_caster->m_currentSpells[GetCurrentContainer()]); + SendSpellStart(); + if(!m_casttime && !m_spellInfo->StartRecoveryTime && !m_castItemGUID //item: first cast may destroy item and second cast causes crash && GetCurrentContainer() == CURRENT_GENERIC_SPELL) cast(true); - else - { - m_caster->SetCurrentCastedSpell( this ); - m_selfContainer = &(m_caster->m_currentSpells[GetCurrentContainer()]); - } - - SendSpellStart(); } } |