aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjohnholiver <johnholiver@gmail.com>2011-05-05 18:08:01 -0300
committerjohnholiver <johnholiver@gmail.com>2011-05-05 18:08:01 -0300
commite617c1618fc1207f9fdbf0b248d7e6f36773b8cd (patch)
treee289829eed2fe4b334680a7a5e6decb02e58457b /src
parentacf7f6501359e1de7226f96834ebdeaa6bca6633 (diff)
Core/Spells: Interruption should be checked after knowing that the knockback effect will happen (in this case, after the glyph checks).
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 7d1fc92113c..510ec8dc9a5 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -6064,10 +6064,6 @@ void Spell::EffectKnockBack(SpellEffIndex effIndex)
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)
{
@@ -6084,6 +6080,10 @@ void Spell::EffectKnockBack(SpellEffIndex effIndex)
return;
}
+ // Instantly interrupt non melee spells being casted
+ if (unitTarget->IsNonMeleeSpellCasted(true))
+ unitTarget->InterruptNonMeleeSpells(true);
+
float ratio = m_caster->GetCombatReach() / std::max(unitTarget->GetCombatReach(), 1.0f);
if (ratio < 1.0f)
ratio = ratio * ratio * ratio * 0.1f; // volume = length^3