aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/Northrend
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/scripts/Northrend')
-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
22 files changed, 216 insertions, 0 deletions
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;