aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2022_09_30_01_world_2022_09_20_01_world.sql26
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp6
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h12
3 files changed, 39 insertions, 5 deletions
diff --git a/sql/updates/world/master/2022_09_30_01_world_2022_09_20_01_world.sql b/sql/updates/world/master/2022_09_30_01_world_2022_09_20_01_world.sql
new file mode 100644
index 00000000000..37c7363efc5
--- /dev/null
+++ b/sql/updates/world/master/2022_09_30_01_world_2022_09_20_01_world.sql
@@ -0,0 +1,26 @@
+DELETE FROM `spawn_group_template` WHERE `groupId` BETWEEN 169 AND 172;
+INSERT INTO `spawn_group_template` (`groupId`,`groupName`,`groupFlags`) VALUES
+(169,'Hellfire Citadel: The Shattered Halls - Grand Warlock Nethekurse',4),
+(170,'Hellfire Citadel: The Shattered Halls - Blood Guard Porung',4),
+(171,'Hellfire Citadel: The Shattered Halls - Warbringer O''mrogg',4),
+(172,'Hellfire Citadel: The Shattered Halls - Warchief Kargath Bladefist',4);
+
+DELETE FROM `instance_spawn_groups` WHERE `spawnGroupId` BETWEEN 169 AND 172;
+INSERT INTO `instance_spawn_groups` (`instanceMapId`,`bossStateId`,`bossStates`,`spawnGroupId`,`flags`) VALUES
+(540,0,23,169,1),
+(540,1,23,170,1),
+(540,2,23,171,1),
+(540,3,23,172,1);
+
+DELETE FROM `spawn_group` WHERE `groupId` BETWEEN 169 AND 172;
+INSERT INTO `spawn_group` SELECT 169, 0, `guid` FROM `linked_respawn` WHERE `linkedGuid`=57853 AND `linkType` IN (0,3);
+INSERT INTO `spawn_group` SELECT 170, 0, `guid` FROM `linked_respawn` WHERE `linkedGuid`=34038 AND `linkType` IN (0,3);
+INSERT INTO `spawn_group` SELECT 171, 0, `guid` FROM `linked_respawn` WHERE `linkedGuid`=57855 AND `linkType` IN (0,3);
+INSERT INTO `spawn_group` SELECT 172, 0, `guid` FROM `linked_respawn` WHERE `linkedGuid`=57854 AND `linkType` IN (0,3);
+INSERT INTO `spawn_group` (`groupId`,`spawnType`,`spawnId`) VALUES
+(169,0,57853),
+(170,0,34038),
+(171,0,57855),
+(172,0,57854);
+
+DELETE FROM `linked_respawn` WHERE `linkedGuid` IN (57853,34038,57855,57854);
diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp
index 860f02d6a49..cb856a4de10 100644
--- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp
@@ -135,6 +135,12 @@ class instance_shattered_halls : public InstanceMapScript
}
}
+ void OnUnitDeath(Unit* unit) override
+ {
+ if (unit->GetEntry() == NPC_BLOOD_GUARD_PORUNG)
+ SetBossState(DATA_PORUNG, DONE);
+ }
+
bool SetBossState(uint32 type, EncounterState state) override
{
if (!InstanceScript::SetBossState(type, state))
diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
index 1bf9b822b31..ae71528220d 100644
--- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
+++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
@@ -30,13 +30,14 @@ uint32 const VictimCount = 3;
enum SHDataTypes
{
DATA_NETHEKURSE = 0,
- DATA_OMROGG = 1,
- DATA_KARGATH = 2,
+ DATA_PORUNG = 1,
+ DATA_OMROGG = 2,
+ DATA_KARGATH = 3,
- DATA_SHATTERED_EXECUTIONER = 3,
- DATA_PRISONERS_EXECUTED = 4,
+ DATA_SHATTERED_EXECUTIONER = 4,
+ DATA_PRISONERS_EXECUTED = 5,
- DATA_TEAM_IN_INSTANCE = 5,
+ DATA_TEAM_IN_INSTANCE = 6,
DATA_FIRST_PRISONER,
DATA_SECOND_PRISONER,
@@ -46,6 +47,7 @@ enum SHDataTypes
enum SHCreatureIds
{
NPC_GRAND_WARLOCK_NETHEKURSE = 16807,
+ NPC_BLOOD_GUARD_PORUNG = 20923,
NPC_KARGATH_BLADEFIST = 16808,
NPC_SHATTERED_EXECUTIONER = 17301,