aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTrista <aconstantgoal@abv.bg>2013-03-06 11:05:11 +0200
committerTrista <aconstantgoal@abv.bg>2013-03-06 11:05:11 +0200
commit7508e8cf6579c7c9e5cdaae6cde3c00ab6fa2d8a (patch)
tree286d0834ab1b215bc989d0baf93ec78b4554fdf5 /src
parenta79143fc88b3061a6747ad84a58dbf18cb2ebe43 (diff)
Scripts/Eye of Eternity: Correct failed approach for hook target handling
* thx to Shauren
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
index 54b10dbde6e..df829f27c0c 100644
--- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
+++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
@@ -1799,28 +1799,22 @@ class spell_malygos_arcane_storm : public SpellScriptLoader
}
else
Trinity::Containers::RandomResizeList(targets, (malygos->GetMap()->GetDifficulty() == RAID_DIFFICULTY_10MAN_NORMAL ? 4 : 10));
-
- // Both casts should start approx at same time (with SPELL_ARCANE_STORM_EXTRA_VISUAL having advantage - it should lead)
- // and not when purple light visual has already hit target.
- filteredTargets = targets;
}
- void HandleVisual()
+ void HandleVisual(SpellEffIndex /*effIndex*/)
{
- if (filteredTargets.empty())
+ // Both missiles should start approx at same time (with SPELL_ARCANE_STORM_EXTRA_VISUAL having advantage - it should lead)
+ if (!GetHitUnit())
return;
- for (std::list<WorldObject*>::iterator itr = filteredTargets.begin(); itr != filteredTargets.end(); ++itr)
- GetCaster()->CastSpell((*itr)->ToUnit(), SPELL_ARCANE_STORM_EXTRA_VISUAL, true);
+ GetCaster()->CastSpell(GetHitUnit(), SPELL_ARCANE_STORM_EXTRA_VISUAL, true);
}
void Register()
{
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_malygos_arcane_storm_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_SRC_AREA_ENEMY);
- OnCast += SpellCastFn(spell_malygos_arcane_storm_SpellScript::HandleVisual);
+ OnEffectLaunchTarget += SpellEffectFn(spell_malygos_arcane_storm_SpellScript::HandleVisual, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE);
}
-
- std::list<WorldObject*> filteredTargets;
};
SpellScript* GetSpellScript() const