From f090d23d2cc1dba79c44244edfeec5cd85d17e79 Mon Sep 17 00:00:00 2001 From: Skjalf <47818697+Nyeriah@users.noreply.github.com> Date: Mon, 8 Nov 2021 23:44:59 -0300 Subject: [PATCH] fix(Scripts/UBRS): Handle Rend and Drakkisath doors (#9072) --- .../BlackrockSpire/blackrock_spire.h | 1 - .../instance_blackrock_spire.cpp | 19 +++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h index 225181b32..f724d5272 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h @@ -128,7 +128,6 @@ enum GameObjectsIds // For Gyth event GO_DR_PORTCULLIS = 175185, GO_PORTCULLIS_ACTIVE = 164726, - GO_PORTCULLIS_TOBOSSROOMS = 175186, // Urok Doomhowl GO_UROK_PILE = 175621, GO_UROK_CHALLENGE = 175584, diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp index a6111f3f5..63fc4ba14 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp @@ -61,6 +61,14 @@ MinionData const minionData[] = { 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 { public: @@ -76,6 +84,7 @@ public: { SetBossNumber(EncounterCount); LoadMinionData(minionData); + LoadDoorData(doorData); CurrentSolakarWave = 0; SolakarState = NOT_STARTED; SolakarSummons.clear(); @@ -260,11 +269,6 @@ public: if (GetBossState(DATA_GYTH) == DONE) HandleGameObject(ObjectGuid::Empty, true, go); 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: go_urokPile = go->GetGUID(); break; @@ -277,6 +281,8 @@ public: default: break; } + + InstanceScript::OnGameObjectCreate(go); } bool SetBossState(uint32 type, EncounterState state) override @@ -504,8 +510,6 @@ public: return go_emberseerrunes[6]; case GO_PORTCULLIS_ACTIVE: return go_portcullis_active; - case GO_PORTCULLIS_TOBOSSROOMS: - return go_portcullis_tobossrooms; default: break; } @@ -708,7 +712,6 @@ public: ObjectGuid go_emberseerrunes[7]; GuidVector runecreaturelist[7]; ObjectGuid go_portcullis_active; - ObjectGuid go_portcullis_tobossrooms; ObjectGuid go_urokPile; ObjectGuid go_urokChallenge; std::vector go_urokOgreCirles;