diff options
author | Treeston <treeston.mmoc@gmail.com> | 2019-08-30 01:04:11 +0200 |
---|---|---|
committer | Treeston <treeston.mmoc@gmail.com> | 2019-08-30 01:04:11 +0200 |
commit | 23fd193e4e489bb5f231653987e98ba24448832b (patch) | |
tree | 6197a7a58d76077ac6ca87892ffb24d85fd31df0 /src | |
parent | 92d83c3c2eaba3f5b58dc98472318872f3a54706 (diff) |
Scripts/ICC: Professor Putricide no longer tries to add threat on units it cannot add threat on because of immunity flags. Instead, its AI manually controls the engagement state. Should close #23727.
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp index f0093e7ca6b..adc964345a1 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp @@ -254,14 +254,6 @@ class boss_professor_putricide : public CreatureScript } } - void EnterEvadeMode(EvadeReason why = EVADE_REASON_OTHER) override - { - if (why == EVADE_REASON_BOUNDARY && (events.IsInPhase(PHASE_ROTFACE) || events.IsInPhase(PHASE_FESTERGUT))) - return; - - BossAI::EnterEvadeMode(why); - } - void JustEngagedWith(Unit* who) override { if (events.IsInPhase(PHASE_ROTFACE) || events.IsInPhase(PHASE_FESTERGUT)) @@ -439,7 +431,7 @@ class boss_professor_putricide : public CreatureScript me->SetSpeedRate(MOVE_RUN, _baseSpeed*2.0f); me->GetMotionMaster()->MovePoint(POINT_FESTERGUT, festergutWatchPos); me->SetReactState(REACT_PASSIVE); - DoZoneInCombat(me); + EngagementStart(nullptr); if (IsHeroic()) events.ScheduleEvent(EVENT_FESTERGUT_GOO, urand(13000, 18000), 0, PHASE_FESTERGUT); break; @@ -455,8 +447,8 @@ class boss_professor_putricide : public CreatureScript me->SetSpeedRate(MOVE_RUN, _baseSpeed*2.0f); me->GetMotionMaster()->MovePoint(POINT_ROTFACE, rotfaceWatchPos); me->SetReactState(REACT_PASSIVE); + EngagementStart(nullptr); _oozeFloodStage = 0; - DoZoneInCombat(me); // init random sequence of floods if (Creature* rotface = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_ROTFACE))) { @@ -716,19 +708,6 @@ class boss_professor_putricide : public CreatureScript { _phase = newPhase; events.SetPhase(newPhase); - - switch (newPhase) - { - case PHASE_FESTERGUT: - SetBoundary(instance->GetBossBoundary(DATA_FESTERGUT)); - break; - case PHASE_ROTFACE: - SetBoundary(instance->GetBossBoundary(DATA_ROTFACE)); - break; - default: - SetBoundary(instance->GetBossBoundary(DATA_PROFESSOR_PUTRICIDE)); - break; - } } ObjectGuid _oozeFloodDummyGUIDs[4]; |