aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp4
-rw-r--r--src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp22
-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
-rw-r--r--src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.h2
-rw-r--r--src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp10
-rw-r--r--src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp9
-rw-r--r--src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/instance_old_hillsbrad.cpp8
-rw-r--r--src/server/scripts/Kalimdor/DireMaul/instance_dire_maul.cpp21
-rw-r--r--src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp12
-rw-r--r--src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp12
-rw-r--r--src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp6
-rw-r--r--src/server/scripts/Kalimdor/RuinsOfAhnQiraj/instance_ruins_of_ahnqiraj.cpp11
-rw-r--r--src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp14
-rw-r--r--src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp9
-rw-r--r--src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp10
-rw-r--r--src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp8
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/instance_obsidian_sanctum.cpp9
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp9
-rw-r--r--src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheChampion/instance_trial_of_the_champion.cpp9
-rw-r--r--src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp10
-rw-r--r--src/server/scripts/Northrend/DraktharonKeep/instance_drak_tharon_keep.cpp9
-rw-r--r--src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/instance_forge_of_souls.cpp7
-rw-r--r--src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp8
-rw-r--r--src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp8
-rw-r--r--src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp10
-rw-r--r--src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp20
-rw-r--r--src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp6
-rw-r--r--src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp10
-rw-r--r--src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp9
-rw-r--r--src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp9
-rw-r--r--src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp9
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp22
-rw-r--r--src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp8
-rw-r--r--src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp9
-rw-r--r--src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp9
-rw-r--r--src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp8
-rw-r--r--src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/instance_auchenai_crypts.cpp7
-rw-r--r--src/server/scripts/Outland/Auchindoun/ManaTombs/instance_mana_tombs.cpp9
-rw-r--r--src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp8
-rw-r--r--src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp9
-rw-r--r--src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp14
-rw-r--r--src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp11
-rw-r--r--src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp8
-rw-r--r--src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/instance_the_slave_pens.cpp10
-rw-r--r--src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp7
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp8
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp8
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp6
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp9
-rw-r--r--src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h2
-rw-r--r--src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp9
-rw-r--r--src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp10
-rw-r--r--src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp9
-rw-r--r--src/server/scripts/Outland/TempestKeep/botanica/instance_the_botanica.cpp10
68 files changed, 642 insertions, 12 deletions
diff --git a/src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp b/src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp
index 58e07c7fb25..0b86e21fd1a 100644
--- a/src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp
+++ b/src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp
@@ -121,8 +121,7 @@ constexpr uint8 MAX_TARGETS_SIZE = 6;
enum Misc
{
- SUMMON_GROUP_ID_SURGING_FEL = 0,
- ENCOUNTER_ID_GAROTHI_WORLDBREAKER = 2076
+ SUMMON_GROUP_ID_SURGING_FEL = 0
};
namespace TargetHandler
@@ -242,7 +241,6 @@ struct boss_garothi_worldbreaker : public BossAI
_JustDied();
Talk(SAY_DEATH);
CleanupEncounter();
- instance->SendBossKillCredit(ENCOUNTER_ID_GAROTHI_WORLDBREAKER);
instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me);
}
diff --git a/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp b/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp
index 1ea867c7317..ef6acfa964b 100644
--- a/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp
+++ b/src/server/scripts/Argus/AntorusTheBurningThrone/instance_antorus_the_burning_throne.cpp
@@ -37,10 +37,25 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
-class instance_antorus_the_burning_throne: public InstanceMapScript
+DungeonEncounterData const encounters[] =
+{
+ { DATA_GAROTHI_WORLDBREAKER, {{ 2076 }} },
+ { DATA_FELHOUNDS_OF_SAGERAS, {{ 2074 }} },
+ { DATA_ANTORAN_HIGH_COMMAND, {{ 2070 }} },
+ { DATA_PORTAL_KEEPER_HASABEL, {{ 2064 }} },
+ { DATA_EONAR_THE_LIFE_BINDER, {{ 2075 }} },
+ { DATA_IMONAR_THE_SOULHUNTER, {{ 2082 }} },
+ { DATA_KINGAROTH, {{ 2088 }} },
+ { DATA_VARIMATHRAS, {{ 2069 }} },
+ { DATA_THE_COVEN_OF_SHIVARRA, {{ 2073 }} },
+ { DATA_AGGRAMAR, {{ 2063 }} },
+ { DATA_ARGUS_THE_UNMAKER, {{ 2092 }} }
+};
+
+class instance_antorus_the_burning_throne : public InstanceMapScript
{
public:
- instance_antorus_the_burning_throne() : InstanceMapScript(ABTScriptName, 757) { }
+ instance_antorus_the_burning_throne() : InstanceMapScript(ABTScriptName, 1712) { }
struct instance_antorus_the_burning_throne_InstanceMapScript: public InstanceScript
{
@@ -50,6 +65,7 @@ class instance_antorus_the_burning_throne: public InstanceMapScript
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, nullptr);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
@@ -68,7 +84,7 @@ class instance_antorus_the_burning_throne: public InstanceMapScript
}
};
- InstanceScript* GetInstanceScript(InstanceMap* map) const
+ InstanceScript* GetInstanceScript(InstanceMap* map) const override
{
return new instance_antorus_the_burning_throne_InstanceMapScript(map);
}
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
{
diff --git a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.h b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.h
index 21d4338de3e..06ba6b40026 100644
--- a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.h
+++ b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.h
@@ -21,7 +21,7 @@
#include "CreatureAIImpl.h"
#define BFDScriptName "instance_blackfathom_deeps"
-#define DataHeader "BFD"
+#define DataHeader "BFDv1"
uint32 const EncounterCount = 3;
diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp
index 6e368abee84..05eb00e7f5b 100644
--- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp
+++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/instance_hyjal.cpp
@@ -58,6 +58,15 @@ ObjectData const creatureData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_RAGEWINTERCHILL, {{ 618 }} },
+ { DATA_ANETHERON, {{ 619 }} },
+ { DATA_KAZROGAL, {{ 620 }} },
+ { DATA_AZGALOR, {{ 621 }} },
+ { DATA_ARCHIMONDE, {{ 622 }} }
+};
+
class instance_hyjal : public InstanceMapScript
{
public:
@@ -75,6 +84,7 @@ public:
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, nullptr);
+ LoadDungeonEncounterData(encounters);
RaidDamage = 0;
Trash = 0;
diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp
index 167082fd16e..b85cb34814e 100644
--- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp
+++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp
@@ -128,6 +128,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_MEATHOOK, {{ 2002 }} },
+ { DATA_SALRAMM, {{ 2004 }} },
+ { DATA_EPOCH, {{ 2003 }} },
+ { DATA_MAL_GANIS, {{ 2005 }} }
+};
+
COSProgressStates GetStableStateFor(COSProgressStates const state)
{
switch (state)
@@ -274,6 +282,7 @@ class instance_culling_of_stratholme : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
_currentWorldStates[WORLDSTATE_SHOW_CRATES] = _currentWorldStates[WORLDSTATE_CRATES_REVEALED] = _currentWorldStates[WORLDSTATE_WAVE_COUNT] = _currentWorldStates[WORLDSTATE_TIME_GUARDIAN_SHOW] = _currentWorldStates[WORLDSTATE_TIME_GUARDIAN] = 0;
_plagueCrates.reserve(NUM_PLAGUE_CRATES);
diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/instance_old_hillsbrad.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/instance_old_hillsbrad.cpp
index 9f5c2510f26..bcebfcaa72f 100644
--- a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/instance_old_hillsbrad.cpp
+++ b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/instance_old_hillsbrad.cpp
@@ -39,6 +39,13 @@ EndScriptData */
#define QUEST_ENTRY_DIVERSION 10283
#define LODGE_QUEST_TRIGGER 20155
+DungeonEncounterData const encounters[] =
+{
+ { DATA_LIEUTENANT_DRAKE, {{ 1905 }} },
+ { DATA_CAPTAIN_SKARLOC, {{ 1907 }} },
+ { DATA_EPOCH_HUNTER, {{ 1906 }} }
+};
+
class instance_old_hillsbrad : public InstanceMapScript
{
public:
@@ -55,6 +62,7 @@ public:
{
SetHeaders(DataHeader);
SetBossNumber(OldHillsbradFoothillsBossCount);
+ LoadDungeonEncounterData(encounters);
ThrallEscortState = OH_ESCORT_PRISON_TO_SKARLOC;
mBarrelCount = 0;
diff --git a/src/server/scripts/Kalimdor/DireMaul/instance_dire_maul.cpp b/src/server/scripts/Kalimdor/DireMaul/instance_dire_maul.cpp
index 6244cf2dcbb..f60e14614f4 100644
--- a/src/server/scripts/Kalimdor/DireMaul/instance_dire_maul.cpp
+++ b/src/server/scripts/Kalimdor/DireMaul/instance_dire_maul.cpp
@@ -68,6 +68,26 @@ enum Events
EVENT_CRYSTAL_CREATURE_CHECK = 2
};
+DungeonEncounterData const encounters[] =
+{
+ { 1, {{ 345 }} },
+ { 2, {{ 344 }} },
+ { 3, {{ 343 }} },
+ { 4, {{ 346 }} },
+ { 5, {{ 350 }} },
+ { 6, {{ 348 }} },
+ { 8, {{ 347 }} },
+ { 9, {{ 349 }} },
+ { 10, {{ 361 }} },
+ { 11, {{ 362 }} },
+ { 12, {{ 363 }} },
+ { 13, {{ 364 }} },
+ { 14, {{ 365 }} },
+ { 15, {{ 366 }} },
+ // { , {{ 367 }}}, Cho'Rush the Observer
+ { 16, {{ 368 }} }
+};
+
class instance_dire_maul : public InstanceMapScript
{
public:
@@ -79,6 +99,7 @@ public:
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp b/src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp
index 57a03c08668..11ea87763a6 100644
--- a/src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp
+++ b/src/server/scripts/Kalimdor/Firelands/instance_firelands.cpp
@@ -22,6 +22,17 @@
#include "InstanceScript.h"
#include "Map.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_BETH_TILAC, {{ 1197 }} },
+ { DATA_LORD_RHYOLITH, {{ 1204 }} },
+ { DATA_SHANNOX, {{ 1205 }} },
+ { DATA_ALYSRAZOR, {{ 1206 }} },
+ { DATA_BALEROC, {{ 1200 }} },
+ { DATA_MAJORDOMO_STAGHELM, {{ 1185 }} },
+ { DATA_RAGNAROS, {{ 1203 }} }
+};
+
class instance_firelands : public InstanceMapScript
{
public:
@@ -33,6 +44,7 @@ class instance_firelands : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp
index 484d29d0487..c63a6f98f68 100644
--- a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp
+++ b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp
@@ -40,6 +40,17 @@ DoorData const doorData[] =
{0, 0, DOOR_TYPE_ROOM }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_TEMPLE_GUARDIAN_ANHUUR, {{ 1080 }} },
+ { DATA_EARTHRAGER_PTAH, {{ 1076 }} },
+ { DATA_ANRAPHET, {{ 1075 }} },
+ { DATA_ISISET, {{ 1077 }} },
+ { DATA_AMMUNAE, {{ 1074 }} },
+ { DATA_SETESH, {{ 1079 }} },
+ { DATA_RAJH, {{ 1078 }} }
+};
+
class instance_halls_of_origination : public InstanceMapScript
{
public:
@@ -52,6 +63,7 @@ class instance_halls_of_origination : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
_deadElementals = 0;
}
diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
index bb5a6d36ebb..55615271882 100644
--- a/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
+++ b/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
@@ -37,6 +37,11 @@ BossBoundaryData const boundaries =
{ DATA_ONYXIA, new CircleBoundary(Position(-34.3697f, -212.3296f), 100.0) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ONYXIA, {{ 1084 }} }
+};
+
class instance_onyxias_lair : public InstanceMapScript
{
public:
@@ -54,6 +59,7 @@ public:
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
onyxiaLiftoffTimer = 0;
manyWhelpsCounter = 0;
diff --git a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/instance_ruins_of_ahnqiraj.cpp b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/instance_ruins_of_ahnqiraj.cpp
index 8e93bab3371..47ebfaf2a16 100644
--- a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/instance_ruins_of_ahnqiraj.cpp
+++ b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/instance_ruins_of_ahnqiraj.cpp
@@ -20,6 +20,16 @@
#include "InstanceScript.h"
#include "ruins_of_ahnqiraj.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_KURINNAXX, {{ 718 }} },
+ { DATA_RAJAXX, {{ 719 }} },
+ { DATA_MOAM, {{ 720 }} },
+ { DATA_BURU, {{ 721 }} },
+ { DATA_AYAMISS, {{ 722 }} },
+ { DATA_OSSIRIAN, {{ 723 }} }
+};
+
class instance_ruins_of_ahnqiraj : public InstanceMapScript
{
public:
@@ -31,6 +41,7 @@ class instance_ruins_of_ahnqiraj : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(NUM_ENCOUNTER);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp
index d4f1d044428..f0553f53057 100644
--- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp
+++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp
@@ -46,6 +46,19 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SKERAM, {{ 709 }} },
+ { DATA_SARTURA, {{ 711 }} },
+ { DATA_FRANKRIS, {{ 712 }} },
+ { DATA_HUHURAN, {{ 714 }} },
+ { DATA_TWIN_EMPERORS, {{ 715 }} },
+ { DATA_CTHUN, {{ 717 }} },
+ { DATA_BUG_TRIO, {{ 710 }} },
+ { DATA_VISCIDUS, {{ 713 }} },
+ { DATA_OURO, {{ 716 }} }
+};
+
class instance_temple_of_ahnqiraj : public InstanceMapScript
{
public:
@@ -64,6 +77,7 @@ class instance_temple_of_ahnqiraj : public InstanceMapScript
LoadObjectData(creatureData, nullptr);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
IsBossDied[0] = false;
IsBossDied[1] = false;
IsBossDied[2] = false;
diff --git a/src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp b/src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp
index 53cd81e28ce..f443f9d1ac0 100644
--- a/src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp
+++ b/src/server/scripts/Maelstrom/Stonecore/instance_stonecore.cpp
@@ -46,6 +46,14 @@ ObjectData const creatureData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_CORBORUS, {{ 1056 }} },
+ { DATA_SLABHIDE, {{ 1059 }} },
+ { DATA_OZRUK, {{ 1058 }} },
+ { DATA_HIGH_PRIESTESS_AZIL, {{ 1057 }} }
+};
+
class instance_stonecore : public InstanceMapScript
{
public:
@@ -58,6 +66,7 @@ class instance_stonecore : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(MAX_ENCOUNTER);
LoadObjectData(creatureData, nullptr);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp
index fce945a8e11..32223e99e61 100644
--- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp
+++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp
@@ -49,6 +49,15 @@ BossBoundaryData const boundaries =
{ DATA_JEDOGA_SHADOWSEEKER, new ParallelogramBoundary(Position(460.365f, -661.997f, -20.985f), Position(364.958f,-790.211f, -14.207f), Position(347.436f,-657.978f,14.478f)) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ELDER_NADOX, {{ 1969 }} },
+ { DATA_PRINCE_TALDARAM, {{ 1966 }} },
+ { DATA_JEDOGA_SHADOWSEEKER, {{ 1967 }} },
+ { DATA_AMANITAR, {{ 1989 }} },
+ { DATA_HERALD_VOLAZJ, {{ 1968 }} }
+};
+
class instance_ahnkahet : public InstanceMapScript
{
public:
@@ -63,6 +72,7 @@ class instance_ahnkahet : public InstanceMapScript
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
SpheresState[0] = 0;
SpheresState[1] = 0;
diff --git a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp
index 66d888d1adf..fed8856f4e8 100644
--- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp
+++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/instance_azjol_nerub.cpp
@@ -56,6 +56,13 @@ BossBoundaryData const boundaries =
{ DATA_ANUBARAK, new CircleBoundary(Position(550.6178f, 253.5917f), 26.0f) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_KRIKTHIR, {{ 1971 }} },
+ { DATA_HADRONOX, {{ 1972 }} },
+ { DATA_ANUBARAK, {{ 1973 }} }
+};
+
class instance_azjol_nerub : public InstanceMapScript
{
public:
@@ -70,6 +77,7 @@ class instance_azjol_nerub : public InstanceMapScript
LoadBossBoundaries(boundaries);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameobjectData);
+ LoadDungeonEncounterData(encounters);
GateWatcherGreet = 0;
}
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/instance_obsidian_sanctum.cpp b/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/instance_obsidian_sanctum.cpp
index 81d2b66024d..1f79309b8d5 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/instance_obsidian_sanctum.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/instance_obsidian_sanctum.cpp
@@ -30,6 +30,14 @@ BossBoundaryData const boundaries =
{ DATA_SARTHARION, new RectangleBoundary(3218.86f, 3275.69f, 484.68f, 572.4f) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SARTHARION, {{ 1090 }} },
+ { DATA_TENEBRON, {{ 1092 }} },
+ { DATA_SHADRON, {{ 1091 }} },
+ { DATA_VESPERON, {{ 1093 }} }
+};
+
class instance_obsidian_sanctum : public InstanceMapScript
{
public:
@@ -42,6 +50,7 @@ public:
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp
index 0fd569a94f3..0d0635409ba 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/instance_ruby_sanctum.cpp
@@ -71,6 +71,14 @@ ObjectData const gameObjectData[] =
{ 0, 0 } //END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_BALTHARUS_THE_WARBORN, {{ 1147 }} },
+ { DATA_SAVIANA_RAGEFIRE, {{ 1149 }} },
+ { DATA_GENERAL_ZARITHRIAN, {{ 1148 }} },
+ { DATA_HALION, {{ 1150 }} }
+};
+
class instance_ruby_sanctum : public InstanceMapScript
{
public:
@@ -85,6 +93,7 @@ class instance_ruby_sanctum : public InstanceMapScript
LoadBossBoundaries(boundaries);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
BaltharusSharedHealth = 0;
}
diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheChampion/instance_trial_of_the_champion.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheChampion/instance_trial_of_the_champion.cpp
index 4735f87452b..4ca63b4d306 100644
--- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheChampion/instance_trial_of_the_champion.cpp
+++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheChampion/instance_trial_of_the_champion.cpp
@@ -33,6 +33,14 @@ EndScriptData */
constexpr uint32 ToCEncounterCount = 4;
+DungeonEncounterData const encounters[] =
+{
+ { BOSS_GRAND_CHAMPIONS, {{ 2022 }} },
+ { BOSS_ARGENT_CHALLENGE_E, {{ 2023 }} },
+ { BOSS_ARGENT_CHALLENGE_P, {{ 2023 }} },
+ { BOSS_BLACK_KNIGHT, {{ 2021 }} }
+};
+
class instance_trial_of_the_champion : public InstanceMapScript
{
public:
@@ -50,6 +58,7 @@ public:
{
SetHeaders(DataHeader);
SetBossNumber(ToCEncounterCount);
+ LoadDungeonEncounterData(encounters);
uiArgentSoldierDeaths = 0;
teamInInstance = 0;
diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp
index 00551025db4..6101d468b2c 100644
--- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp
+++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp
@@ -92,6 +92,15 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_NORTHREND_BEASTS, {{ 1088 }} },
+ { DATA_JARAXXUS, {{ 1087 }} },
+ { DATA_FACTION_CRUSADERS, {{ 1086 }} },
+ { DATA_TWIN_VALKIRIES, {{ 1089 }} },
+ { DATA_ANUBARAK, {{ 1085 }} }
+};
+
class instance_trial_of_the_crusader : public InstanceMapScript
{
public:
@@ -106,6 +115,7 @@ class instance_trial_of_the_crusader : public InstanceMapScript
LoadBossBoundaries(boundaries);
LoadObjectData(creatureData, gameObjectData);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
EventStage = 0;
NorthrendBeasts = NOT_STARTED;
NorthrendBeastsCount = 4;
diff --git a/src/server/scripts/Northrend/DraktharonKeep/instance_drak_tharon_keep.cpp b/src/server/scripts/Northrend/DraktharonKeep/instance_drak_tharon_keep.cpp
index 6d87399d426..bd7c5d30a35 100644
--- a/src/server/scripts/Northrend/DraktharonKeep/instance_drak_tharon_keep.cpp
+++ b/src/server/scripts/Northrend/DraktharonKeep/instance_drak_tharon_keep.cpp
@@ -22,6 +22,14 @@
#include "Map.h"
#include "ScriptedCreature.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_TROLLGORE, {{ 1974 }} },
+ { DATA_NOVOS, {{ 1976 }} },
+ { DATA_KING_DRED, {{ 1977 }} },
+ { DATA_THARON_JA, {{ 1975 }} }
+};
+
class instance_drak_tharon_keep : public InstanceMapScript
{
public:
@@ -33,6 +41,7 @@ class instance_drak_tharon_keep : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/instance_forge_of_souls.cpp b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/instance_forge_of_souls.cpp
index 67fb437b65d..ba20e8905d4 100644
--- a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/instance_forge_of_souls.cpp
+++ b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/instance_forge_of_souls.cpp
@@ -29,6 +29,12 @@ BossBoundaryData const boundaries =
{ DATA_DEVOURER_OF_SOULS, new ParallelogramBoundary(Position(5663.56f, 2570.53f), Position(5724.39f, 2520.45f), Position(5570.36f, 2461.42f)) }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_BRONJAHM, {{ 2006 }} },
+ { DATA_DEVOURER_OF_SOULS, {{ 2007 }} }
+};
+
class instance_forge_of_souls : public InstanceMapScript
{
public:
@@ -41,6 +47,7 @@ class instance_forge_of_souls : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
teamInInstance = 0;
}
diff --git a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp
index f2d5624a4bf..5aa0be17532 100644
--- a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp
+++ b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp
@@ -25,6 +25,13 @@
#include "TemporarySummon.h"
#include "Transport.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_FALRIC, {{ 1992 }} },
+ { DATA_MARWYN, {{ 1993 }} },
+ { DATA_THE_LICH_KING_ESCAPE, {{ 1990 }} }
+};
+
Position const JainaSpawnPos = { 5236.659f, 1929.894f, 707.7781f, 0.8726646f }; // Jaina Spawn Position
Position const SylvanasSpawnPos = { 5236.667f, 1929.906f, 707.7781f, 0.8377581f }; // Sylvanas Spawn Position (sniffed)
Position const JainaSpawnPos2 = { 5549.011f, 2257.041f, 733.0120f, 1.153993f }; // Jaina Spawn Position 2
@@ -88,6 +95,7 @@ class instance_halls_of_reflection : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
_teamInInstance = 0;
_waveCount = 0;
diff --git a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp
index 5f39d276978..6a80e90f134 100644
--- a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp
+++ b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/instance_pit_of_saron.cpp
@@ -36,6 +36,13 @@ DoorData const Doors[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_GARFROST, {{ 1999 }} },
+ { DATA_ICK, {{ 2001 }} },
+ { DATA_TYRANNUS, {{ 2000 }} }
+};
+
class instance_pit_of_saron : public InstanceMapScript
{
public:
@@ -48,6 +55,7 @@ class instance_pit_of_saron : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(Doors);
+ LoadDungeonEncounterData(encounters);
_teamInInstance = 0;
_cavernActive = 0;
_shardsHit = 0;
diff --git a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp
index 62004f0396b..ca427278948 100644
--- a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp
+++ b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp
@@ -54,6 +54,15 @@ ObjectData const gameObjectData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SLAD_RAN, {{ 1978 }} },
+ { DATA_DRAKKARI_COLOSSUS, {{ 1983 }} },
+ { DATA_MOORABI, {{ 1980 }} },
+ { DATA_GAL_DARAH, {{ 1981 }} },
+ { DATA_ECK_THE_FEROCIOUS, {{ 1988 }} }
+};
+
Position const EckSpawnPoint = { 1643.877930f, 936.278015f, 107.204948f, 0.668432f };
class instance_gundrak : public InstanceMapScript
@@ -69,6 +78,7 @@ class instance_gundrak : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
SladRanStatueState = GO_STATE_ACTIVE;
DrakkariColossusStatueState = GO_STATE_ACTIVE;
diff --git a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
index 48bf18f6d4e..c9a4765c99d 100644
--- a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
+++ b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp
@@ -107,6 +107,25 @@ ObjectData const objectData[] =
{ 0, 0, }
};
+DungeonEncounterData const encounters[] =
+{
+ { BOSS_ANUBREKHAN, {{ 1107 }} },
+ { BOSS_FAERLINA, {{ 1110 }} },
+ { BOSS_MAEXXNA, {{ 1116 }} },
+ { BOSS_NOTH, {{ 1117 }} },
+ { BOSS_HEIGAN, {{ 1112 }} },
+ { BOSS_LOATHEB, {{ 1115 }} },
+ { BOSS_PATCHWERK, {{ 1118 }} },
+ { BOSS_GROBBULUS, {{ 1111 }} },
+ { BOSS_GLUTH, {{ 1108 }} },
+ { BOSS_THADDIUS, {{ 1120 }} },
+ { BOSS_RAZUVIOUS, {{ 1113 }} },
+ { BOSS_GOTHIK, {{ 1109 }} },
+ { BOSS_HORSEMEN, {{ 1121 }} },
+ { BOSS_SAPPHIRON, {{ 1119 }} },
+ { BOSS_KELTHUZAD, {{ 1114 }} }
+};
+
class instance_naxxramas : public InstanceMapScript
{
public:
@@ -121,6 +140,7 @@ class instance_naxxramas : public InstanceMapScript
LoadBossBoundaries(boundaries);
LoadDoorData(doorData);
LoadObjectData(nullptr, objectData);
+ LoadDungeonEncounterData(encounters);
hadSapphironBirth = false;
CurrentWingTaunt = SAY_KELTHUZAD_FIRST_WING_TAUNT;
diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp
index ff852e4474f..8892b1145f7 100644
--- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp
+++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp
@@ -30,6 +30,11 @@ BossBoundaryData const boundaries =
{ DATA_MALYGOS_EVENT, new CircleBoundary(Position(754.362f, 1301.609985f), 280.0) } // sanity check boundary
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_MALYGOS_EVENT, {{ 1094 }} }
+};
+
class instance_eye_of_eternity : public InstanceMapScript
{
public:
@@ -47,6 +52,7 @@ public:
SetHeaders(DataHeader);
SetBossNumber(MAX_ENCOUNTER);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
}
void OnPlayerEnter(Player* player) override
diff --git a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
index c6e9c27115b..80924f1fe3b 100644
--- a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
+++ b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp
@@ -23,6 +23,15 @@
#include "nexus.h"
#include "Player.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_COMMANDER, {{ 519 }} },
+ { DATA_MAGUS_TELESTRA, {{ 520, 521, 2010 }} },
+ { DATA_ANOMALUS, {{ 522, 523, 2009 }} },
+ { DATA_ORMOROK, {{ 524, 525, 2012 }} },
+ { DATA_KERISTRASZA, {{ 526, 527, 2011 }} }
+};
+
class instance_nexus : public InstanceMapScript
{
public:
@@ -34,6 +43,7 @@ class instance_nexus : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
_teamInInstance = 0;
}
diff --git a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp
index eeff191f6e9..b4fb75349b5 100644
--- a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp
+++ b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp
@@ -33,6 +33,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_DRAKOS, {{ 528, 529, 2016 }} },
+ { DATA_VAROS, {{ 530, 531, 2015 }} },
+ { DATA_UROM, {{ 532, 533, 2014 }} },
+ { DATA_EREGOS, {{ 534, 535, 2013 }} }
+};
+
Position const VerdisaMove = { 949.188f, 1032.91f, 359.967f, 1.093027f };
Position const BelgaristraszMove = { 941.453f, 1044.1f, 359.967f, 0.1984709f };
Position const EternosMove = { 943.202f, 1059.35f, 359.967f, 5.757278f };
@@ -49,6 +57,7 @@ class instance_oculus : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
CentrifugueConstructCounter = 0;
}
diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp
index 1cd269e135a..bef018139f0 100644
--- a/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp
+++ b/src/server/scripts/Northrend/Ulduar/HallsOfLightning/instance_halls_of_lightning.cpp
@@ -48,6 +48,14 @@ ObjectData const gameObjectData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_GENERAL_BJARNGRIM, {{ 1987 }} },
+ { DATA_VOLKHAN, {{ 1985 }} },
+ { DATA_IONAR, {{ 1984 }} },
+ { DATA_LOKEN, {{ 1986 }} }
+};
+
class instance_halls_of_lightning : public InstanceMapScript
{
public:
@@ -61,6 +69,7 @@ class instance_halls_of_lightning : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, gameObjectData);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp
index 8bd8ac33438..e11787a3bd0 100644
--- a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp
+++ b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp
@@ -51,6 +51,14 @@ ObjectData const gameObjectData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_KRYSTALLUS, {{ 1994 }} },
+ { DATA_MAIDEN_OF_GRIEF, {{ 1996 }} },
+ { DATA_TRIBUNAL_OF_AGES, {{ 1995 }} },
+ { DATA_SJONNIR_THE_IRONSHAPER, {{ 1998 }} }
+};
+
class instance_halls_of_stone : public InstanceMapScript
{
public:
@@ -64,6 +72,7 @@ class instance_halls_of_stone : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, gameObjectData);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
index 32b0ad030cf..e7dd5c1cf2f 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp
@@ -140,6 +140,27 @@ ObjectData const objectData[] =
{ 0, 0 }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_FLAME_LEVIATHAN, {{ 1132 }} },
+ { DATA_IGNIS, {{ 1136 }} },
+ { DATA_RAZORSCALE, {{ 1139 }} },
+ { DATA_XT002, {{ 1142 }} },
+ { DATA_ASSEMBLY_OF_IRON, {{ 1140 }} },
+ { DATA_KOLOGARN, {{ 1137 }} },
+ { DATA_AURIAYA, {{ 1131 }} },
+ { DATA_HODIR, {{ 1135 }} },
+ { DATA_THORIM, {{ 1141 }} },
+ { DATA_FREYA, {{ 1133 }} },
+ { DATA_MIMIRON, {{ 1138 }} },
+ { DATA_VEZAX, {{ 1134 }} },
+ { DATA_YOGG_SARON, {{ 1143 }} },
+ { DATA_ALGALON, {{ 1130 }} },
+ { DATA_BRIGHTLEAF, {{ 1164 }} },
+ { DATA_IRONBRANCH, {{ 1165 }} },
+ { DATA_STONEBARK, {{ 1166 }} }
+};
+
UlduarKeeperDespawnEvent::UlduarKeeperDespawnEvent(Creature* owner, Milliseconds despawnTimerOffset) : _owner(owner), _despawnTimer(despawnTimerOffset)
{
}
@@ -166,6 +187,7 @@ class instance_ulduar : public InstanceMapScript
LoadDoorData(doorData);
LoadMinionData(minionData);
LoadObjectData(creatureData, objectData);
+ LoadDungeonEncounterData(encounters);
_maxArmorItemLevel = 0;
_maxWeaponItemLevel = 0;
diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp
index 4b1fedc4b97..dfac043dac9 100644
--- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp
+++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/instance_utgarde_keep.cpp
@@ -35,6 +35,13 @@ MinionData const minionData[] =
{ 0, 0 }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_PRINCE_KELESETH, {{ 2026 }} },
+ { DATA_SKARVALD_DALRONN, {{ 2024 }} },
+ { DATA_INGVAR, {{ 2025 }} }
+};
+
class instance_utgarde_keep : public InstanceMapScript
{
public:
@@ -48,6 +55,7 @@ class instance_utgarde_keep : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadMinionData(minionData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp
index 7b6cc204e86..e4a9eaf249a 100644
--- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp
+++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp
@@ -56,6 +56,14 @@ ObjectData const gameObjectData[] =
{ 0, 0 } //END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SVALA_SORROWGRAVE, {{ 2030 }} },
+ { DATA_GORTOK_PALEHOOF, {{ 2027 }} },
+ { DATA_SKADI_THE_RUTHLESS, {{ 2029 }} },
+ { DATA_KING_YMIRON, {{ 2028 }} }
+};
+
class instance_utgarde_pinnacle : public InstanceMapScript
{
public:
@@ -70,6 +78,7 @@ class instance_utgarde_pinnacle : public InstanceMapScript
LoadBossBoundaries(boundaries);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
diff --git a/src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp b/src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp
index b3adec78b5b..b8ea5dfe62f 100644
--- a/src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp
+++ b/src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp
@@ -36,6 +36,14 @@ ObjectData const creatureData[] =
{ 0, 0, }
};
+DungeonEncounterData const encounters[] =
+{
+ { NPC_ARCHAVON, {{ 1126 }} },
+ { NPC_EMALON, {{ 1127 }} },
+ { NPC_KORALON, {{ 1128 }} },
+ { NPC_TORAVON, {{ 1129 }} }
+};
+
class instance_vault_of_archavon : public InstanceMapScript
{
public:
@@ -48,6 +56,7 @@ class instance_vault_of_archavon : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, nullptr);
+ LoadDungeonEncounterData(encounters);
ArchavonDeath = 0;
EmalonDeath = 0;
diff --git a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp
index 8cbeee0cb1b..7568ef2d8e3 100644
--- a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp
+++ b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp
@@ -189,6 +189,13 @@ MinionData const minionData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_1ST_BOSS, {{ 2019 }} },
+ { DATA_2ND_BOSS, {{ 2018 }} },
+ { DATA_CYANIGOSA, {{ 2020 }} }
+};
+
class instance_violet_hold : public InstanceMapScript
{
public:
@@ -204,6 +211,7 @@ class instance_violet_hold : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, gameObjectData);
LoadMinionData(minionData);
+ LoadDungeonEncounterData(encounters);
DoorIntegrity = 100;
WaveCount = 0;
diff --git a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/instance_auchenai_crypts.cpp b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/instance_auchenai_crypts.cpp
index c12df1266f5..010fd4d32ce 100644
--- a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/instance_auchenai_crypts.cpp
+++ b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/instance_auchenai_crypts.cpp
@@ -19,6 +19,12 @@
#include "auchenai_crypts.h"
#include "InstanceScript.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_SHIRRAK_THE_DEAD_WATCHER, {{ 1890 }} },
+ { DATA_EXARCH_MALADAAR, {{ 1889 }} }
+};
+
class instance_auchenai_crypts : public InstanceMapScript
{
public:
@@ -30,6 +36,7 @@ class instance_auchenai_crypts : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
};
diff --git a/src/server/scripts/Outland/Auchindoun/ManaTombs/instance_mana_tombs.cpp b/src/server/scripts/Outland/Auchindoun/ManaTombs/instance_mana_tombs.cpp
index 8eb8b4fd751..88bcf525156 100644
--- a/src/server/scripts/Outland/Auchindoun/ManaTombs/instance_mana_tombs.cpp
+++ b/src/server/scripts/Outland/Auchindoun/ManaTombs/instance_mana_tombs.cpp
@@ -20,6 +20,14 @@
#include "Unit.h"
#include "mana_tombs.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_PANDEMONIUS, {{ 1900 }} },
+ { DATA_TAVAROK, {{ 1901 }} },
+ { DATA_NEXUSPRINCE_SHAFFAR, {{ 1899 }} },
+ { DATA_YOR, {{ 250 }} }
+};
+
class instance_mana_tombs : public InstanceMapScript
{
public:
@@ -31,6 +39,7 @@ class instance_mana_tombs : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnUnitDeath(Unit* unit) override
diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp
index bd892c3aca5..0036bb89192 100644
--- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp
+++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp
@@ -33,6 +33,13 @@ ObjectData const gameObjectData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_DARKWEAVER_SYTH, {{ 1903 }} },
+ { DATA_TALON_KING_IKISS, {{ 1902 }} },
+ { DATA_ANZU, {{ 1904 }} }
+};
+
class instance_sethekk_halls : public InstanceMapScript
{
public:
@@ -46,6 +53,7 @@ class instance_sethekk_halls : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadObjectData(nullptr, gameObjectData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp
index fa608b1f824..d3062853c3c 100644
--- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp
+++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp
@@ -30,6 +30,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_AMBASSADOR_HELLMAW, {{ 1908 }} },
+ { DATA_BLACKHEART_THE_INCITER, {{ 1909 }} },
+ { DATA_GRANDMASTER_VORPIL, {{ 1911 }} },
+ { DATA_MURMUR, {{ 1910 }} }
+};
+
class instance_shadow_labyrinth : public InstanceMapScript
{
public:
@@ -42,6 +50,7 @@ class instance_shadow_labyrinth : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
FelOverseerCount = 0;
}
diff --git a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
index c872b185e5c..0a21e0753a0 100644
--- a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
+++ b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
@@ -88,6 +88,19 @@ ObjectData const gameObjectData[] =
{ 0, 0 } //END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_HIGH_WARLORD_NAJENTUS, {{ 601 }} },
+ { DATA_SUPREMUS, {{ 602 }} },
+ { DATA_SHADE_OF_AKAMA, {{ 603 }} },
+ { DATA_TERON_GOREFIEND, {{ 604 }} },
+ { DATA_GURTOGG_BLOODBOIL, {{ 605 }} },
+ { DATA_RELIQUARY_OF_SOULS, {{ 606 }} },
+ { DATA_MOTHER_SHAHRAZ, {{ 607 }} },
+ { DATA_ILLIDARI_COUNCIL, {{ 608 }} },
+ { DATA_ILLIDAN_STORMRAGE, {{ 609 }} }
+};
+
class instance_black_temple : public InstanceMapScript
{
public:
@@ -102,6 +115,7 @@ class instance_black_temple : public InstanceMapScript
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
LoadBossBoundaries(boundaries);
+ LoadDungeonEncounterData(encounters);
AkamaState = AKAMA_INTRO;
AkamaIllidanIntro = 1;
}
diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp
index d50073a73d5..39eb7914045 100644
--- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp
+++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/instance_serpent_shrine.cpp
@@ -60,6 +60,16 @@ enum Misc
5 - Lady Vashj Event
*/
+DungeonEncounterData const encounters[] =
+{
+ { BOSS_HYDROSS_THE_UNSTABLE, {{ 623 }} },
+ { BOSS_THE_LURKER_BELOW, {{ 624 }} },
+ { BOSS_LEOTHERAS_THE_BLIND, {{ 625 }} },
+ { BOSS_FATHOM_LORD_KARATHRESS, {{ 626 }} },
+ { BOSS_MOROGRIM_TIDEWALKER, {{ 627 }} },
+ { BOSS_LADY_VASHJ, {{ 628 }} }
+};
+
class go_bridge_console : public GameObjectScript
{
public:
@@ -96,6 +106,7 @@ class instance_serpent_shrine : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(MAX_ENCOUNTER);
+ LoadDungeonEncounterData(encounters);
StrangePool = 0;
Water = WATERSTATE_FRENZY;
diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp
index a37f0753a4c..fc25677e2ec 100644
--- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp
+++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp
@@ -58,6 +58,13 @@ ObjectData const creatureData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_HYDROMANCER_THESPIA, {{ 1942 }} },
+ { DATA_MEKGINEER_STEAMRIGGER, {{ 1943 }} },
+ { DATA_WARLORD_KALITHRESH, {{ 1944 }} }
+};
+
class instance_steam_vault : public InstanceMapScript
{
public:
@@ -70,6 +77,7 @@ class instance_steam_vault : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
distillerState = 0;
}
diff --git a/src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/instance_the_slave_pens.cpp b/src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/instance_the_slave_pens.cpp
index b80e8c845f9..cd9aad5cb95 100644
--- a/src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/instance_the_slave_pens.cpp
+++ b/src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/instance_the_slave_pens.cpp
@@ -35,6 +35,13 @@ ObjectData const creatureData[] =
{ 0, 0, }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_MENNU_THE_BETRAYER, {{ 1939 }} },
+ { DATA_ROKMAR_THE_CRACKLER, {{ 1941 }} },
+ { DATA_QUAGMIRRAN, {{ 1940 }} }
+};
+
class instance_the_slave_pens : public InstanceMapScript
{
public:
@@ -45,8 +52,9 @@ public:
instance_the_slave_pens_InstanceMapScript(InstanceMap* map) : InstanceScript(map)
{
counter = DATA_FLAMECALLER_000;
- LoadObjectData(creatureData, nullptr);
SetBossNumber(EncounterCount);
+ LoadObjectData(creatureData, nullptr);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp b/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp
index eca916a89ee..b69dd7c7653 100644
--- a/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp
+++ b/src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp
@@ -37,6 +37,12 @@ MinionData const minionData[] =
{ 0, 0 }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_MAULGAR, {{ 649 }} },
+ { DATA_GRUUL, {{ 650 }} }
+};
+
class instance_gruuls_lair : public InstanceMapScript
{
public:
@@ -50,6 +56,7 @@ class instance_gruuls_lair : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadMinionData(minionData);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override
diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
index 25fe0fb89ae..549e17d8beb 100644
--- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
@@ -45,6 +45,13 @@ ObjectData const gameObjectData[] =
{ 0, 0 } //END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_THE_MAKER, {{ 1922 }} },
+ { DATA_BROGGOK, {{ 1924 }} },
+ { DATA_KELIDAN_THE_BREAKER, {{ 1923 }} }
+};
+
class instance_blood_furnace : public InstanceMapScript
{
public:
@@ -58,6 +65,7 @@ class instance_blood_furnace : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
PrisonerCounter5 = 0;
PrisonerCounter6 = 0;
diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp
index 839c478b0e0..67a0308058d 100644
--- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp
@@ -28,6 +28,13 @@ EndScriptData */
#include "InstanceScript.h"
#include "Map.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_WATCHKEEPER_GARGOLMAR, {{ 1893 }} },
+ { DATA_OMOR_THE_UNSCARRED, {{ 1891 }} },
+ { DATA_VAZRUDEN, {{ 1892 }} }
+};
+
class instance_ramparts : public InstanceMapScript
{
public:
@@ -39,6 +46,7 @@ class instance_ramparts : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp
index c6983a0f63f..e0c1bc322b0 100644
--- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp
@@ -64,6 +64,11 @@ static MLDataTypes const collapseObjectDatas[] =
DATA_MAGTHERIDON_COLUMN_5,
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_MAGTHERIDON, {{ 651 }} }
+};
+
class instance_magtheridons_lair : public InstanceMapScript
{
public:
@@ -78,6 +83,7 @@ class instance_magtheridons_lair : public InstanceMapScript
LoadDoorData(doorData);
LoadBossBoundaries(boundaries);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
}
void OnGameObjectCreate(GameObject* go) override
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 52dec1e3174..38ebad415d4 100644
--- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp
+++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/instance_shattered_halls.cpp
@@ -38,6 +38,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_NETHEKURSE, {{ 1936 }} },
+ { DATA_PORUNG, {{ 1935 }} },
+ { DATA_OMROGG, {{ 1937 }} },
+ { DATA_KARGATH, {{ 1938 }} },
+};
+
class instance_shattered_halls : public InstanceMapScript
{
public:
@@ -55,6 +63,7 @@ class instance_shattered_halls : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
executionTimer = 0;
executed = 0;
_team = 0;
diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
index ae71528220d..214a73fd69f 100644
--- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
+++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.h
@@ -22,7 +22,7 @@
#include "Position.h"
#define SHScriptName "instance_shattered_halls"
-#define DataHeader "SH"
+#define DataHeader "SHv1"
uint32 const EncounterCount = 4;
uint32 const VictimCount = 3;
diff --git a/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp b/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp
index 0832efd40fe..3f332f96e11 100644
--- a/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp
+++ b/src/server/scripts/Outland/TempestKeep/Eye/instance_the_eye.cpp
@@ -55,6 +55,14 @@ ObjectData const gameObjectData[] =
{ 0, 0 } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_KAELTHAS, {{ 733 }} },
+ { DATA_ALAR, {{ 730 }} },
+ { DATA_SOLARIAN, {{ 732 }} },
+ { DATA_VOID_REAVER, {{ 731 }} }
+};
+
class instance_the_eye : public InstanceMapScript
{
public:
@@ -68,6 +76,7 @@ class instance_the_eye : public InstanceMapScript
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
LoadObjectData(creatureData, gameObjectData);
+ LoadDungeonEncounterData(encounters);
}
};
diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp
index 6cdeb655cce..9fd1208aa9e 100644
--- a/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp
+++ b/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp
@@ -27,6 +27,15 @@ static DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM }
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_GATEWATCHER_GYROKILL, {{ 1933 }} },
+ { DATA_GATEWATCHER_IRON_HAND, {{ 1934 }} },
+ { DATA_MECHANOLORD_CAPACITUS, {{ 1932 }} },
+ { DATA_NETHERMANCER_SEPRETHREA, {{ 1930 }} },
+ { DATA_PATHALEON_THE_CALCULATOR, {{ 1931 }} }
+};
+
class instance_mechanar : public InstanceMapScript
{
public:
@@ -39,6 +48,7 @@ class instance_mechanar : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
}
bool SetBossState(uint32 type, EncounterState state) override
diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp
index 5f1321fb762..adeaec19ca2 100644
--- a/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp
+++ b/src/server/scripts/Outland/TempestKeep/arcatraz/instance_arcatraz.cpp
@@ -29,6 +29,14 @@ DoorData const doorData[] =
{ 0, 0, DOOR_TYPE_ROOM } // END
};
+DungeonEncounterData const encounters[] =
+{
+ { DATA_ZEREKETH, {{ 1916 }} },
+ { DATA_DALLIAH, {{ 1913 }} },
+ { DATA_SOCCOTHRATES, {{ 1915 }} },
+ { DATA_HARBINGER_SKYRISS, {{ 1914 }} }
+};
+
class instance_arcatraz : public InstanceMapScript
{
public:
@@ -41,6 +49,7 @@ class instance_arcatraz : public InstanceMapScript
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
LoadDoorData(doorData);
+ LoadDungeonEncounterData(encounters);
ConversationState = NOT_STARTED;
diff --git a/src/server/scripts/Outland/TempestKeep/botanica/instance_the_botanica.cpp b/src/server/scripts/Outland/TempestKeep/botanica/instance_the_botanica.cpp
index 0529b427415..1ab3574ada8 100644
--- a/src/server/scripts/Outland/TempestKeep/botanica/instance_the_botanica.cpp
+++ b/src/server/scripts/Outland/TempestKeep/botanica/instance_the_botanica.cpp
@@ -20,6 +20,15 @@
#include "InstanceScript.h"
#include "the_botanica.h"
+DungeonEncounterData const encounters[] =
+{
+ { DATA_COMMANDER_SARANNIS, {{ 1925 }} },
+ { DATA_HIGH_BOTANIST_FREYWINN, {{ 1926 }} },
+ { DATA_THORNGRIN_THE_TENDER, {{ 1928 }} },
+ { DATA_LAJ, {{ 1927 }} },
+ { DATA_WARP_SPLINTER, {{ 1929 }} }
+};
+
class instance_the_botanica : public InstanceMapScript
{
public:
@@ -31,6 +40,7 @@ class instance_the_botanica : public InstanceMapScript
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
+ LoadDungeonEncounterData(encounters);
}
void OnCreatureCreate(Creature* creature) override