mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-20 01:15:35 +01:00
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.
This commit is contained in:
@@ -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];
|
||||
|
||||
Reference in New Issue
Block a user