fix(Scripts/TheEye): boss boundaries and Kael door (#18517)

This commit is contained in:
Dan
2024-03-10 13:26:00 +01:00
committed by GitHub
parent 7b5746da8d
commit 3f700645bd
5 changed files with 29 additions and 16 deletions

View File

@@ -227,11 +227,6 @@ struct boss_high_astromancer_solarian : public BossAI
summon->SetInCombatWithZone();
}
}
bool CheckEvadeIfOutOfCombatArea() const override
{
return me->GetDistance2d(432.59f, -371.93f) > 105.0f;
}
};
class spell_astromancer_wrath_of_the_astromancer : public AuraScript

View File

@@ -1014,7 +1014,7 @@ struct npc_thaladred : public ScriptedAI
scheduler.CancelAll();
me->SetReactState(REACT_PASSIVE);
_hasDied = false;
me->SetWalk(true);
me->SetWalk(false);
}
void JustEngagedWith(Unit* /*who*/) override
@@ -1023,6 +1023,7 @@ struct npc_thaladred : public ScriptedAI
{
Talk(SAY_THALADRED_AGGRO);
}
me->SetWalk(true);
ScheduleTimedEvent(100ms, [&]
{
DoResetThreatList();
@@ -1046,7 +1047,7 @@ struct npc_thaladred : public ScriptedAI
{
if (victim->IsNonMeleeSpellCast(false, false, true))
{
DoCastVictim(SPELL_SILENCE);
DoCastSelf(SPELL_SILENCE);
}
}
}, 3600ms, 15200ms);

View File

@@ -107,11 +107,6 @@ struct boss_void_reaver : public BossAI
});
}
bool CheckEvadeIfOutOfCombatArea() const override
{
return me->GetDistance2d(432.59f, 371.93f) > 105.0f;
}
private:
bool _recentlySpoken;
};

View File

@@ -33,7 +33,21 @@ ObjectData const creatureData[] =
ObjectData const gameObjectData[] =
{
{ 0, 0 }
{ 0, 0, }
};
DoorData const doorData[] =
{
{ GO_KAEL_DOOR_1, DATA_KAELTHAS, DOOR_TYPE_ROOM },
{ GO_KAEL_DOOR_2, DATA_KAELTHAS, DOOR_TYPE_ROOM },
{ 0, 0, DOOR_TYPE_ROOM }
};
BossBoundaryData const boundaries =
{
{ DATA_REAVER, new CircleBoundary(Position(432.741809f, 371.859589f), 105.052554f) },
{ DATA_ALAR, new CircleBoundary(Position(331.000000f, -2.38000000f), 108.29246f) },
{ DATA_ASTROMANCER, new CircleBoundary(Position(432.869202f, -374.213806f), 103.74374f) }
};
class instance_the_eye : public InstanceMapScript
@@ -46,8 +60,10 @@ public:
instance_the_eye_InstanceMapScript(Map* map) : InstanceScript(map)
{
SetHeaders(DataHeader);
LoadObjectData(creatureData, gameObjectData);
SetBossNumber(MAX_ENCOUNTER);
LoadObjectData(creatureData, gameObjectData);
LoadDoorData(doorData);
LoadBossBoundaries(boundaries);
}
ObjectGuid ThaladredTheDarkenerGUID;
@@ -100,6 +116,7 @@ public:
KaelStateLeftGUID = gobject->GetGUID();
break;
}
InstanceScript::OnGameObjectCreate(gobject);
}
ObjectGuid GetGuidData(uint32 identifier) const override

View File

@@ -39,7 +39,10 @@ enum EyeData
DATA_THALADRED = 10,
DATA_LORD_SANGUINAR = 11,
DATA_CAPERNIAN = 12,
DATA_TELONICUS = 13
DATA_TELONICUS = 13,
DATA_KAEL_DOOR_1 = 14,
DATA_KAEL_DOOR_2 = 15
};
enum EyeNPCs
@@ -56,7 +59,9 @@ enum EyeGOs
{
GO_BRIDGE_WINDOW = 184069,
GO_KAEL_STATUE_RIGHT = 184596,
GO_KAEL_STATUE_LEFT = 184597
GO_KAEL_STATUE_LEFT = 184597,
GO_KAEL_DOOR_1 = 184324,
GO_KAEL_DOOR_2 = 184325
};
template <class AI, class T>