diff options
| author | Shocker <shocker@freakz.ro> | 2012-03-26 03:02:05 +0300 |
|---|---|---|
| committer | Shocker <shocker@freakz.ro> | 2012-03-26 03:03:32 +0300 |
| commit | fab1944ae4f2f5be6db92a160a3f66deab7fc3b9 (patch) | |
| tree | e0cea7c6a30637e338556f4aa8f587a7dffc77f3 /src | |
| parent | 3f61bd0a26a0de061e68ccc062d654b06e23476f (diff) | |
Core/Spells: Don't remove summoned gameobjects for non-channeled spells when spell cast was canceled
Fixes issues like Demonic Circle: Summon removing the last summoned circle when the new cast was canceled
Diffstat (limited to 'src')
| -rwxr-xr-x | src/server/game/Spells/Spell.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index ecd20a03665..bf2be9afd9b 100755 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -3080,7 +3080,8 @@ void Spell::cancel() *m_selfContainer = NULL; m_caster->RemoveDynObject(m_spellInfo->Id); - m_caster->RemoveGameObject(m_spellInfo->Id, true); + if (IsChanneledSpell(m_spellInfo)) // if not channeled then the object for the current cast wasn't summoned yet + m_caster->RemoveGameObject(m_spellInfo->Id, true); //set state back so finish will be processed m_spellState = oldState; |
