From 7ebb16a3f2eaf809be3ebe332e8504eeed9c6df9 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 2 Jul 2011 13:38:49 +0200 Subject: Scripts/Icecrown Citadel: Fixed room check for Blood Prince Council --- .../IcecrownCitadel/boss_blood_prince_council.cpp | 45 ++++++++++++++++++++-- 1 file changed, 42 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp index 4a394cffe62..f1a7140d8ca 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp @@ -525,9 +525,22 @@ class boss_prince_keleseth_icc : public CreatureScript } } + bool CheckRoom() + { + if (!CheckBoundary(me)) + { + EnterEvadeMode(); + if (Creature* taldaram = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_TALDARAM_GUID))) + taldaram->AI()->EnterEvadeMode(); + + if (Creature* valanar = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_VALANAR_GUID))) + valanar->AI()->EnterEvadeMode(); + } + } + void UpdateAI(uint32 const diff) { - if (!UpdateVictim() || !CheckInRoom()) + if (!UpdateVictim() || !CheckRoom()) return; events.Update(diff); @@ -723,9 +736,22 @@ class boss_prince_taldaram_icc : public CreatureScript } } + bool CheckRoom() + { + if (!CheckBoundary(me)) + { + EnterEvadeMode(); + if (Creature* keleseth = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_KELESETH_GUID))) + keleseth->AI()->EnterEvadeMode(); + + if (Creature* valanar = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_VALANAR_GUID))) + valanar->AI()->EnterEvadeMode(); + } + } + void UpdateAI(uint32 const diff) { - if (!UpdateVictim() || !CheckInRoom()) + if (!UpdateVictim() || !CheckRoom()) return; events.Update(diff); @@ -940,9 +966,22 @@ class boss_prince_valanar_icc : public CreatureScript } } + bool CheckRoom() + { + if (!CheckBoundary(me)) + { + EnterEvadeMode(); + if (Creature* keleseth = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_KELESETH_GUID))) + keleseth->AI()->EnterEvadeMode(); + + if (Creature* taldaram = ObjectAccessor::GetCreature(*me, instance->GetData64(DATA_PRINCE_TALDARAM_GUID))) + taldaram->AI()->EnterEvadeMode(); + } + } + void UpdateAI(uint32 const diff) { - if (!UpdateVictim() || !CheckInRoom()) + if (!UpdateVictim() || !CheckRoom()) return; events.Update(diff); -- cgit v1.2.3