aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2019-08-30 01:04:11 +0200
committerTreeston <treeston.mmoc@gmail.com>2019-08-30 01:04:11 +0200
commit23fd193e4e489bb5f231653987e98ba24448832b (patch)
tree6197a7a58d76077ac6ca87892ffb24d85fd31df0 /src
parent92d83c3c2eaba3f5b58dc98472318872f3a54706 (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.cpp25
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];