aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Spell.cpp7
-rw-r--r--src/server/game/Spells/SpellEffects.cpp2
2 files changed, 7 insertions, 2 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index b37a44d6e70..9bf2184f0c3 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -6880,9 +6880,11 @@ void Spell::HandleLaunchPhase()
for (Unit::AuraEffectList::const_iterator j = Auras.begin(); j != Auras.end(); ++j)
{
if ((*j)->IsAffectedOnSpell(m_spellInfo))
- usesAmmo=false;
+ usesAmmo = false;
}
+ PrepareTargetProcessing();
+
for (std::list<TargetInfo>::iterator ihit= m_UniqueTargetInfo.begin(); ihit != m_UniqueTargetInfo.end(); ++ihit)
{
TargetInfo& target = *ihit;
@@ -6916,8 +6918,11 @@ void Spell::HandleLaunchPhase()
break;
}
}
+
DoAllEffectOnLaunchTarget(target, multiplier);
}
+
+ FinishTargetProcessing();
}
void Spell::DoAllEffectOnLaunchTarget(TargetInfo& targetInfo, float* multiplier)
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 93a0ec2ac56..1b570e7778c 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -3455,7 +3455,7 @@ void Spell::EffectHealMaxHealth(SpellEffIndex /*effIndex*/)
void Spell::EffectInterruptCast(SpellEffIndex effIndex)
{
- if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET)
+ if (effectHandleMode != SPELL_EFFECT_HANDLE_LAUNCH_TARGET)
return;
if (!unitTarget || !unitTarget->IsAlive())