fix(Scripts/UBRS): Handle Rend and Drakkisath doors (#9072)

This commit is contained in:
Skjalf
2021-11-08 23:44:59 -03:00
committed by GitHub
parent 3e82e8a0df
commit f090d23d2c
2 changed files with 11 additions and 9 deletions

View File

@@ -128,7 +128,6 @@ enum GameObjectsIds
// For Gyth event // For Gyth event
GO_DR_PORTCULLIS = 175185, GO_DR_PORTCULLIS = 175185,
GO_PORTCULLIS_ACTIVE = 164726, GO_PORTCULLIS_ACTIVE = 164726,
GO_PORTCULLIS_TOBOSSROOMS = 175186,
// Urok Doomhowl // Urok Doomhowl
GO_UROK_PILE = 175621, GO_UROK_PILE = 175621,
GO_UROK_CHALLENGE = 175584, GO_UROK_CHALLENGE = 175584,

View File

@@ -61,6 +61,14 @@ MinionData const minionData[] =
{ NPC_CHROMATIC_ELITE_GUARD, DATA_GENERAL_DRAKKISATH } { NPC_CHROMATIC_ELITE_GUARD, DATA_GENERAL_DRAKKISATH }
}; };
DoorData const doorData[] =
{
{ GO_GYTH_EXIT_DOOR, DATA_WARCHIEF_REND_BLACKHAND, DOOR_TYPE_PASSAGE, BOUNDARY_NONE },
{ GO_DRAKKISATH_DOOR_1, DATA_GENERAL_DRAKKISATH, DOOR_TYPE_PASSAGE, BOUNDARY_NONE },
{ GO_DRAKKISATH_DOOR_2, DATA_GENERAL_DRAKKISATH, DOOR_TYPE_PASSAGE, BOUNDARY_NONE },
{ 0, 0, DOOR_TYPE_ROOM, BOUNDARY_NONE } // END
};
class instance_blackrock_spire : public InstanceMapScript class instance_blackrock_spire : public InstanceMapScript
{ {
public: public:
@@ -76,6 +84,7 @@ public:
{ {
SetBossNumber(EncounterCount); SetBossNumber(EncounterCount);
LoadMinionData(minionData); LoadMinionData(minionData);
LoadDoorData(doorData);
CurrentSolakarWave = 0; CurrentSolakarWave = 0;
SolakarState = NOT_STARTED; SolakarState = NOT_STARTED;
SolakarSummons.clear(); SolakarSummons.clear();
@@ -260,11 +269,6 @@ public:
if (GetBossState(DATA_GYTH) == DONE) if (GetBossState(DATA_GYTH) == DONE)
HandleGameObject(ObjectGuid::Empty, true, go); HandleGameObject(ObjectGuid::Empty, true, go);
break; break;
case GO_PORTCULLIS_TOBOSSROOMS:
go_portcullis_tobossrooms = go->GetGUID();
if (GetBossState(DATA_GYTH) == DONE)
HandleGameObject(ObjectGuid::Empty, true, go);
break;
case GO_UROK_PILE: case GO_UROK_PILE:
go_urokPile = go->GetGUID(); go_urokPile = go->GetGUID();
break; break;
@@ -277,6 +281,8 @@ public:
default: default:
break; break;
} }
InstanceScript::OnGameObjectCreate(go);
} }
bool SetBossState(uint32 type, EncounterState state) override bool SetBossState(uint32 type, EncounterState state) override
@@ -504,8 +510,6 @@ public:
return go_emberseerrunes[6]; return go_emberseerrunes[6];
case GO_PORTCULLIS_ACTIVE: case GO_PORTCULLIS_ACTIVE:
return go_portcullis_active; return go_portcullis_active;
case GO_PORTCULLIS_TOBOSSROOMS:
return go_portcullis_tobossrooms;
default: default:
break; break;
} }
@@ -708,7 +712,6 @@ public:
ObjectGuid go_emberseerrunes[7]; ObjectGuid go_emberseerrunes[7];
GuidVector runecreaturelist[7]; GuidVector runecreaturelist[7];
ObjectGuid go_portcullis_active; ObjectGuid go_portcullis_active;
ObjectGuid go_portcullis_tobossrooms;
ObjectGuid go_urokPile; ObjectGuid go_urokPile;
ObjectGuid go_urokChallenge; ObjectGuid go_urokChallenge;
std::vector<ObjectGuid> go_urokOgreCirles; std::vector<ObjectGuid> go_urokOgreCirles;