diff options
author | Shocker <none@none> | 2010-08-25 05:14:16 +0300 |
---|---|---|
committer | Shocker <none@none> | 2010-08-25 05:14:16 +0300 |
commit | c741163313f61ebcb50f01b91dc2d7e271e96861 (patch) | |
tree | 717b297c58c9798cd514f9004352d3bcd3176f8f | |
parent | 4da71ac657eaf4f96e2fa7c4a4def611a86439c9 (diff) |
Knockback (ex: Thunderstorm) and Jump (ex: Death Grip) effects must instantly interrupt spellcasting on victim. Fixes issue 1973
--HG--
branch : trunk
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index ebd6b78c590..f92369e8256 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2098,6 +2098,10 @@ void Spell::EffectJump(uint32 i) if (m_caster->isInFlight()) return; + // Instantly interrupt non melee spells being casted + if (m_caster->IsNonMeleeSpellCasted(true)) + m_caster->InterruptNonMeleeSpells(true); + float x,y,z,o; if (m_targets.getUnitTarget()) { @@ -2125,6 +2129,10 @@ void Spell::EffectJumpDest(uint32 i) if (m_caster->isInFlight()) return; + // Instantly interrupt non melee spells being casted + if (m_caster->IsNonMeleeSpellCasted(true)) + m_caster->InterruptNonMeleeSpells(true); + // Init dest coordinates float x,y,z,o; if (m_targets.HasDst()) @@ -6324,6 +6332,10 @@ void Spell::EffectKnockBack(uint32 i) if (!unitTarget) return; + // Instantly interrupt non melee spells being casted + if (unitTarget->IsNonMeleeSpellCasted(true)) + unitTarget->InterruptNonMeleeSpells(true); + // Typhoon if (m_spellInfo->SpellFamilyName == SPELLFAMILY_DRUID && m_spellInfo->SpellFamilyFlags[1] & 0x01000000) { |