aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/Spell.cpp
diff options
context:
space:
mode:
authorSimonDMII <simonlathuile@hotmail.it>2011-04-11 16:35:31 +0600
committerAzazel <azazel.kon@gmail.com>2011-04-11 16:35:31 +0600
commite38634186c295a0de26b30787a221689debc5c11 (patch)
tree9efce21d1bb62411169942e9317c8cf118898fe2 /src/server/game/Spells/Spell.cpp
parent5357b1ba7773801bff66c3bbffe3d2b7c73847ad (diff)
Core/Spells: fix Global Cooldown reset on spell cast interrupt.
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
-rwxr-xr-xsrc/server/game/Spells/Spell.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 7217a492e62..4f2c69f6353 100755
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -3015,10 +3015,6 @@ void Spell::cancel()
if (m_spellState == SPELL_STATE_FINISHED)
return;
- SetReferencedFromCurrent(false);
- if (m_selfContainer && *m_selfContainer == this)
- *m_selfContainer = NULL;
-
uint32 oldState = m_spellState;
m_spellState = SPELL_STATE_FINISHED;
@@ -3053,6 +3049,10 @@ void Spell::cancel()
break;
}
+ SetReferencedFromCurrent(false);
+ if (m_selfContainer && *m_selfContainer == this)
+ *m_selfContainer = NULL;
+
if (m_caster->GetTypeId() == TYPEID_PLAYER)
m_caster->ToPlayer()->RemoveGlobalCooldown(m_spellInfo);