aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-01-23 22:58:07 +0100
committerShauren <shauren.trinity@gmail.com>2022-10-04 00:19:38 +0200
commit46e0056196dd6e56077aeeb67d41ec520046a79e (patch)
tree50eb5d5a6ee6fc3fd1b35cae035158ed5ebcc97c /src/server/scripts/EasternKingdoms
parentab12e77cf72bcd361a380c8d1ed37d12fe0e1bbb (diff)
Scripts/Instances: Add dungeon encounter data
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp8
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp10
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h2
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp13
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp15
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp16
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp9
-rw-r--r--src/server/scripts/EasternKingdoms/Scholomance/instance_scholomance.cpp13
-rw-r--r--src/server/scripts/EasternKingdoms/Scholomance/scholomance.h2
-rw-r--r--src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp10
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp11
-rw-r--r--src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp8
-rw-r--r--src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp11
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp14
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h2
15 files changed, 141 insertions, 3 deletions
diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp
index e6904b0d27e..0cd60964a3a 100644
--- a/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp
+++ b/src/server/scripts/EasternKingdoms/BaradinHold/instance_baradin_hold.cpp
@@ -30,6 +30,13 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ARGALOTH, {{ 1033 }} },
+ { DATA_OCCUTHAR, {{ 1250 }} },
+ { DATA_ALIZABAL, {{ 1332 }} }
+};
+
class instance_baradin_hold: public InstanceMapScript
{
public:
@@ -42,6 +49,7 @@ class instance_baradin_hold: public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp
index 0baf5d3efd7..86d89b216d6 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/instance_blackrock_caverns.cpp
@@ -25,6 +25,15 @@ ObjectData const creatureData[] =
{ 0, 0 }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ROMOGG_BONECRUSHER, {{ 1040 }} },
+ { DATA_CORLA, {{ 1038 }} },
+ { DATA_KARSH_STEELBENDER, {{ 1039 }} },
+ { DATA_BEAUTY, {{ 1037 }} },
+ { DATA_ASCENDANT_LORD_OBSIDIUS, {{ 1036 }} }
+};
+
class instance_blackrock_caverns : public InstanceMapScript
{
public:
@@ -37,6 +46,7 @@ class instance_blackrock_caverns : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, nullptr);
+ LoadDungeonEncounterData(encounters);
}
bool SetBossState(uint32 type, EncounterState state) override
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h
index 98b7b4f5e86..b2bc6381328 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/blackrock_spire.h
@@ -23,7 +23,7 @@
uint32 const EncounterCount = 23;
#define BRSScriptName "instance_blackrock_spire"
-#define DataHeader "BRS"
+#define DataHeader "BRSv1"
enum BRSDataTypes
{
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
index 68b405e2982..87cea25c739 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
@@ -58,6 +58,18 @@ ObjectData const gameObjectData[] =
{ 0, 0 } //END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_RAZORGORE_THE_UNTAMED, {{ 610 }} },
+ { DATA_VAELASTRAZ_THE_CORRUPT, {{ 611 }} },
+ { DATA_BROODLORD_LASHLAYER, {{ 612 }} },
+ { DATA_FIREMAW, {{ 613 }} },
+ { DATA_EBONROC, {{ 614 }} },
+ { DATA_FLAMEGOR, {{ 615 }} },
+ { DATA_CHROMAGGUS, {{ 616 }} },
+ { DATA_NEFARIAN, {{ 617 }} }
+};
+
Position const SummonPosition[8] =
{
{-7661.207520f, -1043.268188f, 407.199554f, 6.280452f},
@@ -85,6 +97,7 @@ public:
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
// Razorgore
EggCount = 0;
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp
index 187cc0f6d58..bc8cc7ee092 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/instance_molten_core.cpp
@@ -40,6 +40,20 @@ Position const SummonPositions[10] =
Position const RagnarosTelePos = {829.159f, -815.773f, -228.972f, 5.30500f};
Position const RagnarosSummonPos = {838.510f, -829.840f, -232.000f, 2.00000f};
+DungeonEncounterData const encounters[] =
+{
+ { BOSS_LUCIFRON, {{ 663 }} },
+ { BOSS_MAGMADAR, {{ 664 }} },
+ { BOSS_GEHENNAS, {{ 665 }} },
+ { BOSS_GARR, {{ 666 }} },
+ { BOSS_SHAZZRAH, {{ 667 }} },
+ { BOSS_BARON_GEDDON, {{ 668 }} },
+ { BOSS_SULFURON_HARBINGER, {{ 669 }} },
+ { BOSS_GOLEMAGG_THE_INCINERATOR, {{ 670 }} },
+ { BOSS_MAJORDOMO_EXECUTUS, {{ 671 }} },
+ { BOSS_RAGNAROS, {{ 672 }} }
+};
+
class instance_molten_core : public InstanceMapScript
{
public:
@@ -51,6 +65,7 @@ class instance_molten_core : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(MAX_ENCOUNTER);
+ LoadDungeonEncounterData(encounters);
_executusSchedule = false;
_ragnarosAddDeaths = 0;
}
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp
index f0cc632cd7c..7690575d1da 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp
@@ -44,6 +44,21 @@ EndScriptData */
11 - Nightbane
*/
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ATTUMEN, {{ 652 }} },
+ { DATA_MOROES, {{ 653 }} },
+ { DATA_MAIDEN_OF_VIRTUE, {{ 654 }} },
+ { DATA_OPERA_PERFORMANCE, {{ 655 }} },
+ { DATA_CURATOR, {{ 656 }} },
+ { DATA_ARAN, {{ 658 }} },
+ { DATA_TERESTIAN, {{ 657 }} },
+ { DATA_NETHERSPITE, {{ 659 }} },
+ { DATA_CHESS, {{ 660 }} },
+ { DATA_MALCHEZZAR, {{ 661 }} },
+ { DATA_NIGHTBANE, {{ 662 }} }
+};
+
const Position OptionalSpawn[] =
{
{ -10960.981445f, -1940.138428f, 46.178097f, 4.12f }, // Hyakiss the Lurker
@@ -67,6 +82,7 @@ public:
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
// 1 - OZ, 2 - HOOD, 3 - RAJ, this never gets altered.
OperaEvent = urand(EVENT_OZ, EVENT_RAJ);
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
index 93ba71d0f30..e6cb81becd6 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
@@ -60,6 +60,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SELIN_FIREHEART, {{ 1897 }} },
+ { DATA_VEXALLUS, {{ 1898 }} },
+ { DATA_PRIESTESS_DELRISSA, {{ 1895 }} },
+ { DATA_KAELTHAS_SUNSTRIDER, {{ 1894 }} }
+};
+
Position const KalecgosSpawnPos = { 164.3747f, -397.1197f, 2.151798f, 1.66219f };
Position const KaelthasTrashGroupDistanceComparisonPos = { 150.0f, 141.0f, -14.4f };
@@ -76,6 +84,7 @@ class instance_magisters_terrace : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, gameObjectData);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
uint32 GetData(uint32 type) const override
diff --git a/src/server/scripts/EasternKingdoms/Scholomance/instance_scholomance.cpp b/src/server/scripts/EasternKingdoms/Scholomance/instance_scholomance.cpp
index a7d88433b88..6f0698bfb1b 100644
--- a/src/server/scripts/EasternKingdoms/Scholomance/instance_scholomance.cpp
+++ b/src/server/scripts/EasternKingdoms/Scholomance/instance_scholomance.cpp
@@ -21,6 +21,18 @@
#include "Map.h"
#include "scholomance.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_DOCTORTHEOLENKRASTINOV, {{ 458 }} },
+ { DATA_INSTRUCTORMALICIA, {{ 457 }} },
+ { DATA_LADYILLUCIABAROV, {{ 462 }} },
+ { DATA_LORDALEXEIBAROV, {{ 461 }} },
+ { DATA_LOREKEEPERPOLKELT, {{ 459 }} },
+ { DATA_THERAVENIAN, {{ 460 }} },
+ { DATA_DARKMASTERGANDLING, {{ 463 }} },
+ { DATA_KIRTONOS, {{ 451 }} }
+};
+
Position const GandlingLoc = { 180.7712f, -5.428603f, 75.57024f, 1.291544f };
class instance_scholomance : public InstanceMapScript
@@ -39,6 +51,7 @@ class instance_scholomance : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
diff --git a/src/server/scripts/EasternKingdoms/Scholomance/scholomance.h b/src/server/scripts/EasternKingdoms/Scholomance/scholomance.h
index 651f1c26625..ca67aba5eb9 100644
--- a/src/server/scripts/EasternKingdoms/Scholomance/scholomance.h
+++ b/src/server/scripts/EasternKingdoms/Scholomance/scholomance.h
@@ -21,7 +21,7 @@
#include "CreatureAIImpl.h"
#define ScholomanceScriptName "instance_scholomance"
-#define DataHeader "SC"
+#define DataHeader "SC_old"
uint32 const EncounterCount = 8;
diff --git a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
index 7cf6697426e..ac6891a3ff7 100644
--- a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
+++ b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
@@ -49,6 +49,15 @@ enum StratholmeMisc
Position const timmyTheCruelSpawnPosition = { 3625.358f, -3188.108f, 130.3985f, 4.834562f };
EllipseBoundary const beforeScarletGate(Position(3671.158f, -3181.79f), 60.0f, 40.0f);
+DungeonEncounterData const encounters[] =
+{
+ { 1, {{ 479 }} }, // Baroness Anastari
+ { 2, {{ 480 }} }, // Nerub'enkan
+ { 3, {{ 481 }} }, // Maleki the Pallid
+ { 4, {{ 483 }} }, // Ramstein the Gorger
+ { 5, {{ 484 }} } // Lord Aurius Rivendare
+};
+
class instance_stratholme : public InstanceMapScript
{
public:
@@ -60,6 +69,7 @@ class instance_stratholme : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(MAX_ENCOUNTER);
+ LoadDungeonEncounterData(encounters);
for (uint8 i = 0; i < 5; ++i)
IsSilverHandDead[i] = false;
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp
index c2960845be9..a24c813c01f 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/instance_sunwell_plateau.cpp
@@ -66,6 +66,16 @@ BossBoundaryData const boundaries =
{ DATA_KALECGOS, new BoundaryUnionBoundary(new CircleBoundary(Position(1704.9f, 928.4f), 34.0), new RectangleBoundary(1689.2f, 1713.3f, 762.2f, 1074.8f)) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_KALECGOS, {{ 724 }} },
+ { DATA_BRUTALLUS, {{ 725 }} },
+ { DATA_FELMYST, {{ 726 }} },
+ { DATA_EREDAR_TWINS, {{ 727 }} },
+ { DATA_MURU, {{ 728 }} },
+ { DATA_KILJAEDEN, {{ 729 }} }
+};
+
class instance_sunwell_plateau : public InstanceMapScript
{
public:
@@ -80,6 +90,7 @@ class instance_sunwell_plateau : public InstanceMapScript
LoadDoorData(doorData);
LoadObjectData(creatureData, nullptr);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
}
Player const* GetPlayerInMap() const
diff --git a/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp b/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp
index 38c3846fa75..5f8dfbcb606 100644
--- a/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp
+++ b/src/server/scripts/EasternKingdoms/TheStockade/instance_the_stockade.cpp
@@ -19,6 +19,13 @@
#include "ScriptMgr.h"
#include "the_stockade.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_RANDOLPH_MOLOCH, {{ 1146 }} },
+ { DATA_LORD_OVERHEAT, {{ 1145 }} },
+ { DATA_HOGGER, {{ 1144 }} }
+};
+
class instance_the_stockade : public InstanceMapScript
{
public:
@@ -30,6 +37,7 @@ public:
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
};
diff --git a/src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp b/src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
index 4af4457d367..b99c31bc90c 100644
--- a/src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulAman/instance_zulaman.cpp
@@ -23,6 +23,16 @@
#include "ScriptedCreature.h"
#include "zulaman.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_AKILZON, {{ 1189 }} },
+ { DATA_NALORAKK, {{ 1190 }} },
+ { DATA_JANALAI, {{ 1191 }} },
+ { DATA_HALAZZI, {{ 1192 }} },
+ { DATA_HEXLORD, {{ 1193 }} },
+ { DATA_DAAKARA, {{ 1194 }} }
+};
+
class instance_zulaman : public InstanceMapScript
{
public:
@@ -35,6 +45,7 @@ class instance_zulaman : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
SpeedRunTimer = 15;
ZulAmanState = NOT_STARTED;
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
index 60a7eff4b1f..c91de05ea3c 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
@@ -30,6 +30,19 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_VENOXIS, {{ 1178 }} },
+ { DATA_MANDOKIR, {{ 1179 }} },
+ { DATA_KILNARA, {{ 1180 }} },
+ { DATA_ZANZIL, {{ 1181 }} },
+ { DATA_JINDO, {{ 1182 }} },
+ { DATA_HAZZARAH, {{ 1188 }} },
+ { DATA_RENATAKI, {{ 1188 }} },
+ { DATA_WUSHOOLAY, {{ 1188 }} },
+ { DATA_GRILEK, {{ 1188 }} }
+};
+
class instance_zulgurub : public InstanceMapScript
{
public:
@@ -42,6 +55,7 @@ class instance_zulgurub : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
index e7b0ee0766a..84bfd01295e 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
@@ -23,7 +23,7 @@
#define ZGScriptName "instance_zulgurub"
#define DataHeader "ZG"
-uint32 const EncounterCount = 5;
+uint32 const EncounterCount = 9;
enum ZGDataTypes
{