aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2011-09-01 00:00:19 +0200
committerShauren <shauren.trinity@gmail.com>2011-09-01 00:00:19 +0200
commitb12c75ecfa014a3f200410efcfa51afb4193903a (patch)
treecb9c3aa73026f36773479d9c8b9960d203bbbae3 /src
parent0fb5c2947f81657f4ae347bf7c5d8be8757c00f7 (diff)
Scripts/Icecrown Citadel: Fixed Blood-Queen Lana'thel's target selection for Bloodbolt Whirl
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp
index 7bbf57dbcd0..ac820162a8b 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp
@@ -658,18 +658,21 @@ class spell_blood_queen_bloodbolt : public SpellScriptLoader
uint32 targetCount = (targets.size() + 2) / 3;
targets.remove_if(BloodboltHitCheck(static_cast<LanaThelAI*>(GetCaster()->GetAI())));
Trinity::RandomResizeList(targets, targetCount);
+ // mark targets now, effect hook has missile travel time delay (might cast next in that time)
+ for (std::list<Unit*>::const_iterator itr = targets.begin(); itr != targets.end(); ++itr)
+ GetCaster()->GetAI()->SetGUID((*itr)->GetGUID(), GUID_BLOODBOLT);
}
- void HandleDummy()
+ void HandleScript(SpellEffIndex effIndex)
{
+ PreventHitDefaultEffect(effIndex);
GetCaster()->CastSpell(GetHitUnit(), SPELL_TWILIGHT_BLOODBOLT, true);
- GetCaster()->GetAI()->SetGUID(GetHitUnit()->GetGUID(), GUID_BLOODBOLT);
}
void Register()
{
- OnUnitTargetSelect += SpellUnitTargetFn(spell_blood_queen_bloodbolt_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_SRC_AREA_ENEMY);
- AfterHit += SpellHitFn(spell_blood_queen_bloodbolt_SpellScript::HandleDummy);
+ OnUnitTargetSelect += SpellUnitTargetFn(spell_blood_queen_bloodbolt_SpellScript::FilterTargets, EFFECT_1, TARGET_UNIT_SRC_AREA_ENEMY);
+ OnEffect += SpellEffectFn(spell_blood_queen_bloodbolt_SpellScript::HandleScript, EFFECT_1, SPELL_EFFECT_SCRIPT_EFFECT);
}
};