aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2021_06_16_03_world_2018_01_18_00_world.sql270
-rw-r--r--src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp2
-rw-r--r--src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp12
-rw-r--r--src/server/scripts/Northrend/Nexus/Nexus/nexus.h12
4 files changed, 283 insertions, 13 deletions
diff --git a/sql/updates/world/master/2021_06_16_03_world_2018_01_18_00_world.sql b/sql/updates/world/master/2021_06_16_03_world_2018_01_18_00_world.sql
new file mode 100644
index 00000000000..d34bb6ba161
--- /dev/null
+++ b/sql/updates/world/master/2021_06_16_03_world_2018_01_18_00_world.sql
@@ -0,0 +1,270 @@
+-- SpawnGroupMapper auto-generated SQL for map 576 (The Nexus)
+
+-- Constant setter section - adjust this
+-- spawn_group_template (5 entries)
+SET @FIRSTGROUPID := 23;
+-- Boss state associations
+SET @FROZENCOMMANDERS := 0; -- boss state that controls group "Frozen Commanders"
+SET @GRANDMAGUSTELESTRA := 1; -- boss state that controls group "Grand Magus Telestra"
+SET @ANOMALUS := 2; -- boss state that controls group "Anomalus"
+SET @ORMOROKTHETREESHAPER := 3; -- boss state that controls group "Ormorok the Tree-Shaper"
+SET @KERISTRASZA := 4; -- boss state that controls group "Keristrasza"
+
+-- DB modification section - you shouldn't need to touch this
+-- Insert spawn group templates
+DELETE FROM `spawn_group_template` WHERE `groupId` BETWEEN @FIRSTGROUPID+0 AND @FIRSTGROUPID+4;
+INSERT INTO `spawn_group_template` (`groupId`,`groupName`,`groupFlags`) VALUES
+ (@FIRSTGROUPID+0, "The Nexus - Frozen Commanders", 0x04),
+ (@FIRSTGROUPID+1, "The Nexus - Grand Magus Telestra", 0x04),
+ (@FIRSTGROUPID+2, "The Nexus - Anomalus", 0x04),
+ (@FIRSTGROUPID+3, "The Nexus - Ormorok the Tree-Shaper", 0x04),
+ (@FIRSTGROUPID+4, "The Nexus - Keristrasza", 0x04);
+
+-- Insert spawn group data
+DELETE FROM `spawn_group` WHERE `groupId` BETWEEN @FIRSTGROUPID+0 AND @FIRSTGROUPID+4;
+INSERT INTO `spawn_group` (`groupId`,`spawnType`,`spawnId`) VALUES
+ (@FIRSTGROUPID+1, 0, 126461),
+ (@FIRSTGROUPID+1, 0, 126477),
+ (@FIRSTGROUPID+4, 0, 126493),
+ (@FIRSTGROUPID+2, 0, 126509),
+ (@FIRSTGROUPID+2, 0, 126525),
+ (@FIRSTGROUPID+2, 0, 126541),
+ (@FIRSTGROUPID+2, 0, 126557),
+ (@FIRSTGROUPID+2, 0, 126573),
+ (@FIRSTGROUPID+2, 0, 126589),
+ (@FIRSTGROUPID+3, 0, 126605),
+ (@FIRSTGROUPID+3, 0, 126621),
+ (@FIRSTGROUPID+3, 0, 126637),
+ (@FIRSTGROUPID+3, 0, 126653),
+ (@FIRSTGROUPID+3, 0, 126446),
+ (@FIRSTGROUPID+1, 0, 126462),
+ (@FIRSTGROUPID+1, 0, 126478),
+ (@FIRSTGROUPID+4, 0, 126494),
+ (@FIRSTGROUPID+2, 0, 126510),
+ (@FIRSTGROUPID+2, 0, 126526),
+ (@FIRSTGROUPID+2, 0, 126542),
+ (@FIRSTGROUPID+2, 0, 126558),
+ (@FIRSTGROUPID+2, 0, 126574),
+ (@FIRSTGROUPID+2, 0, 126590),
+ (@FIRSTGROUPID+3, 0, 126606),
+ (@FIRSTGROUPID+3, 0, 126622),
+ (@FIRSTGROUPID+3, 0, 126638),
+ (@FIRSTGROUPID+3, 0, 126654),
+ (@FIRSTGROUPID+3, 0, 126447),
+ (@FIRSTGROUPID+1, 0, 126463),
+ (@FIRSTGROUPID+1, 0, 126479),
+ (@FIRSTGROUPID+2, 0, 126495),
+ (@FIRSTGROUPID+2, 0, 126511),
+ (@FIRSTGROUPID+2, 0, 126527),
+ (@FIRSTGROUPID+2, 0, 126543),
+ (@FIRSTGROUPID+2, 0, 126559),
+ (@FIRSTGROUPID+2, 0, 126575),
+ (@FIRSTGROUPID+2, 0, 126591),
+ (@FIRSTGROUPID+3, 0, 126607),
+ (@FIRSTGROUPID+3, 0, 126623),
+ (@FIRSTGROUPID+3, 0, 126639),
+ (@FIRSTGROUPID+3, 0, 126655),
+ (@FIRSTGROUPID+4, 0, 126448),
+ (@FIRSTGROUPID+1, 0, 126464),
+ (@FIRSTGROUPID+1, 0, 126480),
+ (@FIRSTGROUPID+2, 0, 126496),
+ (@FIRSTGROUPID+2, 0, 126512),
+ (@FIRSTGROUPID+2, 0, 126528),
+ (@FIRSTGROUPID+2, 0, 126544),
+ (@FIRSTGROUPID+2, 0, 126560),
+ (@FIRSTGROUPID+2, 0, 126576),
+ (@FIRSTGROUPID+2, 0, 126592),
+ (@FIRSTGROUPID+3, 0, 126608),
+ (@FIRSTGROUPID+3, 0, 126624),
+ (@FIRSTGROUPID+3, 0, 126640),
+ (@FIRSTGROUPID+3, 0, 126656),
+ (@FIRSTGROUPID+4, 0, 126449),
+ (@FIRSTGROUPID+1, 0, 126465),
+ (@FIRSTGROUPID+2, 0, 126481),
+ (@FIRSTGROUPID+2, 0, 126497),
+ (@FIRSTGROUPID+2, 0, 126513),
+ (@FIRSTGROUPID+2, 0, 126529),
+ (@FIRSTGROUPID+2, 0, 126545),
+ (@FIRSTGROUPID+2, 0, 126561),
+ (@FIRSTGROUPID+2, 0, 126577),
+ (@FIRSTGROUPID+2, 0, 126593),
+ (@FIRSTGROUPID+3, 0, 126609),
+ (@FIRSTGROUPID+3, 0, 126625),
+ (@FIRSTGROUPID+3, 0, 126641),
+ (@FIRSTGROUPID+3, 0, 126657),
+ (@FIRSTGROUPID+4, 0, 126450),
+ (@FIRSTGROUPID+1, 0, 126466),
+ (@FIRSTGROUPID+2, 0, 126482),
+ (@FIRSTGROUPID+3, 0, 126498),
+ (@FIRSTGROUPID+2, 0, 126514),
+ (@FIRSTGROUPID+2, 0, 126530),
+ (@FIRSTGROUPID+2, 0, 126546),
+ (@FIRSTGROUPID+2, 0, 126562),
+ (@FIRSTGROUPID+2, 0, 126578),
+ (@FIRSTGROUPID+2, 0, 126594),
+ (@FIRSTGROUPID+3, 0, 126610),
+ (@FIRSTGROUPID+3, 0, 126626),
+ (@FIRSTGROUPID+3, 0, 126642),
+ (@FIRSTGROUPID+3, 0, 126658),
+ (@FIRSTGROUPID+2, 0, 126435),
+ (@FIRSTGROUPID+4, 0, 126451),
+ (@FIRSTGROUPID+1, 0, 126467),
+ (@FIRSTGROUPID+2, 0, 126483),
+ (@FIRSTGROUPID+2, 0, 126499),
+ (@FIRSTGROUPID+2, 0, 126515),
+ (@FIRSTGROUPID+2, 0, 126531),
+ (@FIRSTGROUPID+2, 0, 126547),
+ (@FIRSTGROUPID+2, 0, 126563),
+ (@FIRSTGROUPID+2, 0, 126579),
+ (@FIRSTGROUPID+2, 0, 126595),
+ (@FIRSTGROUPID+3, 0, 126627),
+ (@FIRSTGROUPID+3, 0, 126643),
+ (@FIRSTGROUPID+3, 0, 126659),
+ (@FIRSTGROUPID+2, 0, 126436),
+ (@FIRSTGROUPID+4, 0, 126452),
+ (@FIRSTGROUPID+1, 0, 126468),
+ (@FIRSTGROUPID+2, 0, 126484),
+ (@FIRSTGROUPID+4, 0, 126500),
+ (@FIRSTGROUPID+2, 0, 126516),
+ (@FIRSTGROUPID+2, 0, 126532),
+ (@FIRSTGROUPID+2, 0, 126548),
+ (@FIRSTGROUPID+2, 0, 126564),
+ (@FIRSTGROUPID+2, 0, 126580),
+ (@FIRSTGROUPID+2, 0, 126596),
+ (@FIRSTGROUPID+3, 0, 126628),
+ (@FIRSTGROUPID+3, 0, 126644),
+ (@FIRSTGROUPID+3, 0, 126660),
+ (@FIRSTGROUPID+0, 0, 4764),
+ (@FIRSTGROUPID+2, 0, 126437),
+ (@FIRSTGROUPID+4, 0, 126453),
+ (@FIRSTGROUPID+1, 0, 126469),
+ (@FIRSTGROUPID+2, 0, 126485),
+ (@FIRSTGROUPID+4, 0, 126501),
+ (@FIRSTGROUPID+2, 0, 126517),
+ (@FIRSTGROUPID+2, 0, 126533),
+ (@FIRSTGROUPID+2, 0, 126549),
+ (@FIRSTGROUPID+2, 0, 126565),
+ (@FIRSTGROUPID+2, 0, 126581),
+ (@FIRSTGROUPID+2, 0, 126597),
+ (@FIRSTGROUPID+3, 0, 126629),
+ (@FIRSTGROUPID+3, 0, 126645),
+ (@FIRSTGROUPID+3, 0, 126661),
+ (@FIRSTGROUPID+2, 0, 126438),
+ (@FIRSTGROUPID+1, 0, 126454),
+ (@FIRSTGROUPID+1, 0, 126470),
+ (@FIRSTGROUPID+2, 0, 126486),
+ (@FIRSTGROUPID+4, 0, 126502),
+ (@FIRSTGROUPID+2, 0, 126518),
+ (@FIRSTGROUPID+2, 0, 126534),
+ (@FIRSTGROUPID+2, 0, 126550),
+ (@FIRSTGROUPID+2, 0, 126566),
+ (@FIRSTGROUPID+2, 0, 126582),
+ (@FIRSTGROUPID+2, 0, 126598),
+ (@FIRSTGROUPID+3, 0, 126614),
+ (@FIRSTGROUPID+3, 0, 126630),
+ (@FIRSTGROUPID+3, 0, 126646),
+ (@FIRSTGROUPID+3, 0, 126662),
+ (@FIRSTGROUPID+2, 0, 126439),
+ (@FIRSTGROUPID+0, 0, 126455),
+ (@FIRSTGROUPID+1, 0, 126471),
+ (@FIRSTGROUPID+2, 0, 126487),
+ (@FIRSTGROUPID+4, 0, 126503),
+ (@FIRSTGROUPID+2, 0, 126519),
+ (@FIRSTGROUPID+2, 0, 126535),
+ (@FIRSTGROUPID+2, 0, 126551),
+ (@FIRSTGROUPID+2, 0, 126567),
+ (@FIRSTGROUPID+2, 0, 126583),
+ (@FIRSTGROUPID+2, 0, 126599),
+ (@FIRSTGROUPID+3, 0, 126615),
+ (@FIRSTGROUPID+3, 0, 126631),
+ (@FIRSTGROUPID+3, 0, 126647),
+ (@FIRSTGROUPID+3, 0, 126663),
+ (@FIRSTGROUPID+3, 0, 126440),
+ (@FIRSTGROUPID+1, 0, 126456),
+ (@FIRSTGROUPID+1, 0, 126472),
+ (@FIRSTGROUPID+3, 0, 126488),
+ (@FIRSTGROUPID+4, 0, 126504),
+ (@FIRSTGROUPID+2, 0, 126520),
+ (@FIRSTGROUPID+2, 0, 126536),
+ (@FIRSTGROUPID+2, 0, 126552),
+ (@FIRSTGROUPID+2, 0, 126568),
+ (@FIRSTGROUPID+2, 0, 126584),
+ (@FIRSTGROUPID+3, 0, 126600),
+ (@FIRSTGROUPID+3, 0, 126616),
+ (@FIRSTGROUPID+3, 0, 126632),
+ (@FIRSTGROUPID+3, 0, 126648),
+ (@FIRSTGROUPID+0, 0, 126664),
+ (@FIRSTGROUPID+3, 0, 126441),
+ (@FIRSTGROUPID+1, 0, 126457),
+ (@FIRSTGROUPID+1, 0, 126473),
+ (@FIRSTGROUPID+3, 0, 126489),
+ (@FIRSTGROUPID+4, 0, 126505),
+ (@FIRSTGROUPID+2, 0, 126521),
+ (@FIRSTGROUPID+2, 0, 126537),
+ (@FIRSTGROUPID+2, 0, 126553),
+ (@FIRSTGROUPID+2, 0, 126569),
+ (@FIRSTGROUPID+2, 0, 126585),
+ (@FIRSTGROUPID+3, 0, 126601),
+ (@FIRSTGROUPID+3, 0, 126617),
+ (@FIRSTGROUPID+3, 0, 126633),
+ (@FIRSTGROUPID+3, 0, 126649),
+ (@FIRSTGROUPID+0, 0, 126665),
+ (@FIRSTGROUPID+3, 0, 126442),
+ (@FIRSTGROUPID+1, 0, 126458),
+ (@FIRSTGROUPID+0, 0, 126474),
+ (@FIRSTGROUPID+2, 0, 126490),
+ (@FIRSTGROUPID+4, 0, 126506),
+ (@FIRSTGROUPID+2, 0, 126522),
+ (@FIRSTGROUPID+2, 0, 126538),
+ (@FIRSTGROUPID+2, 0, 126554),
+ (@FIRSTGROUPID+2, 0, 126570),
+ (@FIRSTGROUPID+2, 0, 126586),
+ (@FIRSTGROUPID+3, 0, 126602),
+ (@FIRSTGROUPID+3, 0, 126618),
+ (@FIRSTGROUPID+3, 0, 126634),
+ (@FIRSTGROUPID+3, 0, 126650),
+ (@FIRSTGROUPID+0, 0, 126666),
+ (@FIRSTGROUPID+3, 0, 126443),
+ (@FIRSTGROUPID+1, 0, 126459),
+ (@FIRSTGROUPID+0, 0, 126475),
+ (@FIRSTGROUPID+2, 0, 126491),
+ (@FIRSTGROUPID+2, 0, 126507),
+ (@FIRSTGROUPID+2, 0, 126523),
+ (@FIRSTGROUPID+2, 0, 126539),
+ (@FIRSTGROUPID+2, 0, 126555),
+ (@FIRSTGROUPID+2, 0, 126571),
+ (@FIRSTGROUPID+2, 0, 126587),
+ (@FIRSTGROUPID+3, 0, 126603),
+ (@FIRSTGROUPID+3, 0, 126619),
+ (@FIRSTGROUPID+3, 0, 126635),
+ (@FIRSTGROUPID+3, 0, 126651),
+ (@FIRSTGROUPID+0, 0, 126667),
+ (@FIRSTGROUPID+3, 0, 126444),
+ (@FIRSTGROUPID+1, 0, 126460),
+ (@FIRSTGROUPID+1, 0, 126476),
+ (@FIRSTGROUPID+2, 0, 126492),
+ (@FIRSTGROUPID+2, 0, 126508),
+ (@FIRSTGROUPID+2, 0, 126524),
+ (@FIRSTGROUPID+2, 0, 126540),
+ (@FIRSTGROUPID+2, 0, 126556),
+ (@FIRSTGROUPID+2, 0, 126572),
+ (@FIRSTGROUPID+2, 0, 126588),
+ (@FIRSTGROUPID+3, 0, 126604),
+ (@FIRSTGROUPID+3, 0, 126620),
+ (@FIRSTGROUPID+3, 0, 126636),
+ (@FIRSTGROUPID+3, 0, 126652),
+ (@FIRSTGROUPID+0, 0, 126668),
+ (@FIRSTGROUPID+3, 0, 126445),
+ (@FIRSTGROUPID+2, 0, 126434);
+
+-- Link information for instance script
+DELETE FROM `instance_spawn_groups` WHERE `instanceMapId` = 576;
+INSERT INTO `instance_spawn_groups` (`instanceMapId`, `bossStateId`, `bossStates`, `spawnGroupId`, `flags`) VALUES
+ (576,@FROZENCOMMANDERS,0x17,@FIRSTGROUPID+0,0x1), -- Spawn Frozen Commanders if state is not DONE
+ (576,@GRANDMAGUSTELESTRA,0x17,@FIRSTGROUPID+1,0x1), -- Spawn Grand Magus Telestra if state is not DONE
+ (576,@ANOMALUS,0x17,@FIRSTGROUPID+2,0x1), -- Spawn Anomalus if state is not DONE
+ (576,@ORMOROKTHETREESHAPER,0x17,@FIRSTGROUPID+3,0x1), -- Spawn Ormorok the Tree-Shaper if state is not DONE
+ (576,@KERISTRASZA,0x17,@FIRSTGROUPID+4,0x1); -- Spawn Keristrasza if state is not DONE
+
+-- Remove legacy linked_respawn entries
+DELETE lr FROM `linked_respawn` lr INNER JOIN `spawn_group` sg ON sg.`groupId` BETWEEN @FIRSTGROUPID+0 AND @FIRSTGROUPID+4 AND sg.`spawnType` = (lr.linkType >> 1) AND sg.`spawnId`=lr.`guid`;
diff --git a/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp b/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp
index 16253a2a6ba..3234aa73f9c 100644
--- a/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp
+++ b/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp
@@ -116,7 +116,7 @@ class boss_keristrasza : public CreatureScript
bool CheckContainmentSpheres(bool removePrison = false)
{
- for (uint32 i = ANOMALUS_CONTAINMET_SPHERE; i < (ANOMALUS_CONTAINMET_SPHERE + DATA_CONTAINMENT_SPHERES); ++i)
+ for (uint32 i = ANOMALUS_CONTAINMENT_SPHERE; i < (ANOMALUS_CONTAINMENT_SPHERE + DATA_CONTAINMENT_SPHERES); ++i)
{
GameObject* containmentSpheres = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(i));
if (!containmentSpheres || containmentSpheres->GetGoState() != GO_STATE_ACTIVE)
diff --git a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
index 5b3228e6413..fec54d6a0c1 100644
--- a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
+++ b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
@@ -93,17 +93,17 @@ class instance_nexus : public InstanceMapScript
{
switch (go->GetEntry())
{
- case GO_ANOMALUS_CONTAINMET_SPHERE:
+ case GO_ANOMALUS_CONTAINMENT_SPHERE:
AnomalusContainmentSphere = go->GetGUID();
if (GetBossState(DATA_ANOMALUS) == DONE)
go->RemoveFlag(GO_FLAG_NOT_SELECTABLE);
break;
- case GO_ORMOROKS_CONTAINMET_SPHERE:
+ case GO_ORMOROKS_CONTAINMENT_SPHERE:
OrmoroksContainmentSphere = go->GetGUID();
if (GetBossState(DATA_ORMOROK) == DONE)
go->RemoveFlag(GO_FLAG_NOT_SELECTABLE);
break;
- case GO_TELESTRAS_CONTAINMET_SPHERE:
+ case GO_TELESTRAS_CONTAINMENT_SPHERE:
TelestrasContainmentSphere = go->GetGUID();
if (GetBossState(DATA_MAGUS_TELESTRA) == DONE)
go->RemoveFlag(GO_FLAG_NOT_SELECTABLE);
@@ -156,11 +156,11 @@ class instance_nexus : public InstanceMapScript
return AnomalusGUID;
case DATA_KERISTRASZA:
return KeristraszaGUID;
- case ANOMALUS_CONTAINMET_SPHERE:
+ case ANOMALUS_CONTAINMENT_SPHERE:
return AnomalusContainmentSphere;
- case ORMOROKS_CONTAINMET_SPHERE:
+ case ORMOROKS_CONTAINMENT_SPHERE:
return OrmoroksContainmentSphere;
- case TELESTRAS_CONTAINMET_SPHERE:
+ case TELESTRAS_CONTAINMENT_SPHERE:
return TelestrasContainmentSphere;
default:
break;
diff --git a/src/server/scripts/Northrend/Nexus/Nexus/nexus.h b/src/server/scripts/Northrend/Nexus/Nexus/nexus.h
index e6f8dcb06b0..e5367ad1c53 100644
--- a/src/server/scripts/Northrend/Nexus/Nexus/nexus.h
+++ b/src/server/scripts/Northrend/Nexus/Nexus/nexus.h
@@ -33,9 +33,9 @@ enum NEXDataTypes
DATA_ORMOROK = 3,
DATA_KERISTRASZA = 4,
- ANOMALUS_CONTAINMET_SPHERE = 5,
- ORMOROKS_CONTAINMET_SPHERE = 6,
- TELESTRAS_CONTAINMET_SPHERE = 7
+ ANOMALUS_CONTAINMENT_SPHERE = 5,
+ ORMOROKS_CONTAINMENT_SPHERE = 6,
+ TELESTRAS_CONTAINMENT_SPHERE = 7
};
enum NEXCreatureIds
@@ -60,9 +60,9 @@ enum NEXCreatureIds
enum NEXGameObjectIds
{
- GO_ANOMALUS_CONTAINMET_SPHERE = 188527,
- GO_ORMOROKS_CONTAINMET_SPHERE = 188528,
- GO_TELESTRAS_CONTAINMET_SPHERE = 188526
+ GO_ANOMALUS_CONTAINMENT_SPHERE = 188527,
+ GO_ORMOROKS_CONTAINMENT_SPHERE = 188528,
+ GO_TELESTRAS_CONTAINMENT_SPHERE = 188526
};
template <class AI, class T>