diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp | 45 |
1 files changed, 42 insertions, 3 deletions
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); |