diff --git a/Source/Game/Maps/Instances/InstanceScript.cs b/Source/Game/Maps/Instances/InstanceScript.cs index af44bc705..a87dfead5 100644 --- a/Source/Game/Maps/Instances/InstanceScript.cs +++ b/Source/Game/Maps/Instances/InstanceScript.cs @@ -146,7 +146,7 @@ namespace Game.Maps } } - void LoadDungeonEncounterData(DungeonEncounterData[] encounters) + public void LoadDungeonEncounterData(DungeonEncounterData[] encounters) { foreach (DungeonEncounterData encounter in encounters) LoadDungeonEncounterData(encounter.BossId, encounter.DungeonEncounterId); @@ -986,10 +986,16 @@ namespace Game.Maps bool _combatResurrectionTimerStarted; } - class DungeonEncounterData + public class DungeonEncounterData { public uint BossId; public uint[] DungeonEncounterId = new uint[4]; + + public DungeonEncounterData(uint bossId, params uint[] dungeonEncounterIds) + { + BossId = bossId; + DungeonEncounterId = dungeonEncounterIds; + } } public class DoorData diff --git a/Source/Scripts/Argus/AntorusTheBurningThrone/GarothiWorldbreaker.cs b/Source/Scripts/Argus/AntorusTheBurningThrone/GarothiWorldbreaker.cs index c80e4ad39..c214659d4 100644 --- a/Source/Scripts/Argus/AntorusTheBurningThrone/GarothiWorldbreaker.cs +++ b/Source/Scripts/Argus/AntorusTheBurningThrone/GarothiWorldbreaker.cs @@ -109,7 +109,6 @@ namespace Scripts.Argus.AntorusTheBurningThrone.GarothiWorldbreaker public const uint MaxTargetsSize = 6; public const byte SummonGroupIdSurgingFel = 0; - public const uint EncounterIdGarothiWorldbreaker = 2076; public const ushort AnimKitIdCannonDestroyed = 13264; public const uint DataLastFiredCannon = 0; @@ -208,7 +207,6 @@ namespace Scripts.Argus.AntorusTheBurningThrone.GarothiWorldbreaker _JustDied(); Talk(TextIds.SayDeath); CleanupEncounter(); - instance.SendBossKillCredit(MiscConst.EncounterIdGarothiWorldbreaker); instance.SendEncounterUnit(EncounterFrameType.Disengage, me); } diff --git a/Source/Scripts/Argus/AntorusTheBurningThrone/InstanceAntorusTheBurningThrone.cs b/Source/Scripts/Argus/AntorusTheBurningThrone/InstanceAntorusTheBurningThrone.cs index ac4ccf544..bb46a3294 100644 --- a/Source/Scripts/Argus/AntorusTheBurningThrone/InstanceAntorusTheBurningThrone.cs +++ b/Source/Scripts/Argus/AntorusTheBurningThrone/InstanceAntorusTheBurningThrone.cs @@ -79,7 +79,22 @@ namespace Scripts.Argus.AntorusTheBurningThrone new DoorData(GameObjectIds.Rock, DataTypes.GarothiWorldbreaker, DoorType.Passage) }; - public instance_antorus_the_burning_throne() : base("instance_antorus_the_burning_throne", 757) { } + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.GarothiWorldbreaker, 2076), + new DungeonEncounterData(DataTypes.FelhoundsOfSageras, 2074), + new DungeonEncounterData(DataTypes.AntoranHighCommand, 2070), + new DungeonEncounterData(DataTypes.PortalKeeperHasabel, 2064), + new DungeonEncounterData(DataTypes.EonarTheLifeBinder, 2075), + new DungeonEncounterData(DataTypes.ImonarTheSoulhunter, 2082), + new DungeonEncounterData(DataTypes.Kingaroth, 2088), + new DungeonEncounterData(DataTypes.Varimathras, 2069), + new DungeonEncounterData(DataTypes.TheCovenOfShivarra, 2073), + new DungeonEncounterData(DataTypes.Aggramar, 2063), + new DungeonEncounterData(DataTypes.ArgusTheUnmaker, 2092) + }; + + public instance_antorus_the_burning_throne() : base("instance_antorus_the_burning_throne", 1712) { } class instance_antorus_the_burning_throne_InstanceMapScript : InstanceScript { @@ -89,6 +104,7 @@ namespace Scripts.Argus.AntorusTheBurningThrone SetBossNumber(BossIds.EncounterCount); LoadObjectData(creatureData, null); LoadDoorData(doorData); + LoadDungeonEncounterData(encounters); } public override void OnCreatureCreate(Creature creature) diff --git a/Source/Scripts/EasternKingdoms/BaradinHold/InstanceBaradinHold.cs b/Source/Scripts/EasternKingdoms/BaradinHold/InstanceBaradinHold.cs index dead85c70..00b17a06a 100644 --- a/Source/Scripts/EasternKingdoms/BaradinHold/InstanceBaradinHold.cs +++ b/Source/Scripts/EasternKingdoms/BaradinHold/InstanceBaradinHold.cs @@ -60,6 +60,13 @@ namespace Scripts.EasternKingdoms.BaradinHold new DoorData(GameObjectIds.AlizabalDoor, DataTypes.Alizabal, DoorType.Room), }; + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.Argaloth, 1033), + new DungeonEncounterData(DataTypes.Occuthar, 1250), + new DungeonEncounterData(DataTypes.Alizabal, 1332) + }; + public instance_baradin_hold() : base(nameof(instance_baradin_hold), 757) { } class instance_baradin_hold_InstanceMapScript : InstanceScript @@ -73,6 +80,7 @@ namespace Scripts.EasternKingdoms.BaradinHold SetHeaders("BH"); SetBossNumber(3); LoadDoorData(doorData); + LoadDungeonEncounterData(encounters); } public override void OnCreatureCreate(Creature creature) diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/InstanceBlackrockCaverns.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/InstanceBlackrockCaverns.cs index cd50e2423..e2dd57864 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/InstanceBlackrockCaverns.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockCaverns/InstanceBlackrockCaverns.cs @@ -49,6 +49,15 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.BlackrockCaverns new ObjectData(CreatureIds.RazTheCrazed, DataTypes.RazTheCrazed) }; + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.RomoggBonecrusher, 1040), + new DungeonEncounterData(DataTypes.Corla, 1038), + new DungeonEncounterData(DataTypes.KarshSteelbender, 1039), + new DungeonEncounterData(DataTypes.Beauty, 1037), + new DungeonEncounterData(DataTypes.AscendantLordObsidius, 1036) + }; + public instance_blackrock_caverns() : base(nameof(instance_blackrock_caverns), 645) { } class instance_blackrock_caverns_InstanceMapScript : InstanceScript @@ -58,6 +67,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.BlackrockCaverns SetHeaders("BRC"); SetBossNumber(5); LoadObjectData(creatureData, null); + LoadDungeonEncounterData(encounters); } public override bool SetBossState(uint type, EncounterState state) diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/InstanceBlackrockSpire.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/InstanceBlackrockSpire.cs index bc3413754..793f246e8 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/InstanceBlackrockSpire.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/InstanceBlackrockSpire.cs @@ -160,7 +160,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.BlackrockSpire { public instance_blackrock_spireMapScript(InstanceMap map) : base(map) { - SetHeaders("BRS"); + SetHeaders("BRSv1"); SetBossNumber(BRSMiscConst.EncounterCount); LoadDoorData(BRSMiscConst.doorData); diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/InstanceBlackwingLair.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/InstanceBlackwingLair.cs index 09d4ea756..b1f77fe46 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/InstanceBlackwingLair.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/InstanceBlackwingLair.cs @@ -25,9 +25,6 @@ using Framework.Constants; namespace Scripts.EasternKingdoms.BlackrockMountain.BlackwingLair { - //uint const EncounterCount = 8; - - struct DataTypes { // Encounter States/Boss GUIDs @@ -141,6 +138,18 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.BlackwingLair [Script] class instance_blackwing_lair : InstanceMapScript { + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.RazorgoreTheUntamed, 610), + new DungeonEncounterData(DataTypes.VaelastrazTheCorrupt, 611), + new DungeonEncounterData(DataTypes.BroodlordLashlayer, 612), + new DungeonEncounterData(DataTypes.Firemaw, 613), + new DungeonEncounterData(DataTypes.Ebonroc, 614), + new DungeonEncounterData(DataTypes.Flamegor, 615), + new DungeonEncounterData(DataTypes.Chromaggus, 616), + new DungeonEncounterData(DataTypes.Nefarian, 617) + }; + public instance_blackwing_lair() : base(nameof(instance_blackwing_lair), 469) { } class instance_blackwing_lair_InstanceMapScript : InstanceScript @@ -156,6 +165,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.BlackwingLair SetBossNumber(BWLMisc.EncounterCount); LoadDoorData(BWLMisc.doorData); LoadObjectData(BWLMisc.creatureData, BWLMisc.gameObjectData); + LoadDungeonEncounterData(encounters); // Razorgore EggCount = 0; diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/BaronGeddon.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/BaronGeddon.cs index 872f43572..de84a34a4 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/BaronGeddon.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/BaronGeddon.cs @@ -41,7 +41,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.BaronGeddon [Script] class boss_baron_geddon : BossAI { - public boss_baron_geddon(Creature creature) : base(creature, BossIds.BaronGeddon) { } + public boss_baron_geddon(Creature creature) : base(creature, DataTypes.BaronGeddon) { } public override void JustEngagedWith(Unit victim) { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Garr.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Garr.cs index a0118744b..05893933b 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Garr.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Garr.cs @@ -40,7 +40,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Garr [Script] class boss_garr : BossAI { - public boss_garr(Creature creature) : base(creature, BossIds.Garr) { } + public boss_garr(Creature creature) : base(creature, DataTypes.Garr) { } public override void JustEngagedWith(Unit victim) { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Gehennas.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Gehennas.cs index b6e86ae3b..435c97380 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Gehennas.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Gehennas.cs @@ -32,7 +32,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Gehennas [Script] class boss_gehennas : BossAI { - public boss_gehennas(Creature creature) : base(creature, BossIds.Gehennas) { } + public boss_gehennas(Creature creature) : base(creature, DataTypes.Gehennas) { } public override void JustEngagedWith(Unit victim) { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Golemagg.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Golemagg.cs index f248f94a1..c69b7251f 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Golemagg.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Golemagg.cs @@ -46,7 +46,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Golemagg [Script] class boss_golemagg : BossAI { - public boss_golemagg(Creature creature) : base(creature, BossIds.GolemaggTheIncinerator) { } + public boss_golemagg(Creature creature) : base(creature, DataTypes.GolemaggTheIncinerator) { } public override void Reset() { @@ -117,7 +117,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Golemagg if (HealthAbovePct(50) || _instance == null) return; - Creature pGolemagg = ObjectAccessor.GetCreature(me, _instance.GetGuidData(BossIds.GolemaggTheIncinerator)); + Creature pGolemagg = ObjectAccessor.GetCreature(me, _instance.GetGuidData(DataTypes.GolemaggTheIncinerator)); if (pGolemagg) { if (pGolemagg.IsAlive()) diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/InstanceMoltenCore.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/InstanceMoltenCore.cs index b9eea04e1..9986667b5 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/InstanceMoltenCore.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/InstanceMoltenCore.cs @@ -23,7 +23,7 @@ using System; namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore { - struct BossIds + struct DataTypes { public const uint Lucifron = 0; public const uint Magmadar = 1; @@ -91,6 +91,20 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore [Script] class instance_molten_core : InstanceMapScript { + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.Lucifron, 663), + new DungeonEncounterData(DataTypes.Magmadar, 664), + new DungeonEncounterData(DataTypes.Gehennas, 665), + new DungeonEncounterData(DataTypes.Garr, 666), + new DungeonEncounterData(DataTypes.Shazzrah, 667), + new DungeonEncounterData(DataTypes.BaronGeddon, 668), + new DungeonEncounterData(DataTypes.SulfuronHarbinger, 669), + new DungeonEncounterData(DataTypes.GolemaggTheIncinerator, 670), + new DungeonEncounterData(DataTypes.MajordomoExecutus, 671), + new DungeonEncounterData(DataTypes.Ragnaros, 672) + }; + public instance_molten_core() : base(nameof(instance_molten_core), 409) { } class instance_molten_core_InstanceMapScript : InstanceScript @@ -104,7 +118,8 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore public instance_molten_core_InstanceMapScript(InstanceMap map) : base(map) { SetHeaders("MC"); - SetBossNumber(BossIds.MaxEncounter); + SetBossNumber(DataTypes.MaxEncounter); + LoadDungeonEncounterData(encounters); _executusSchedule = false; _ragnarosAddDeaths = 0; } @@ -168,9 +183,9 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore { switch (type) { - case BossIds.GolemaggTheIncinerator: + case DataTypes.GolemaggTheIncinerator: return _golemaggTheIncineratorGUID; - case BossIds.MajordomoExecutus: + case DataTypes.MajordomoExecutus: return _majordomoExecutusGUID; } @@ -182,11 +197,11 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore if (!base.SetBossState(bossId, state)) return false; - if (state == EncounterState.Done && bossId < BossIds.MajordomoExecutus) + if (state == EncounterState.Done && bossId < DataTypes.MajordomoExecutus) if (CheckMajordomoExecutus()) SummonMajordomoExecutus(); - if (bossId == BossIds.MajordomoExecutus && state == EncounterState.Done) + if (bossId == DataTypes.MajordomoExecutus && state == EncounterState.Done) DoRespawnGameObject(_cacheOfTheFirelordGUID, TimeSpan.FromDays(7)); return true; @@ -198,7 +213,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore if (!_majordomoExecutusGUID.IsEmpty()) return; - if (GetBossState(BossIds.MajordomoExecutus) != EncounterState.Done) + if (GetBossState(DataTypes.MajordomoExecutus) != EncounterState.Done) { instance.SummonCreature(MCCreatureIds.MajordomoExecutus, MCMiscConst.SummonPositions[0]); instance.SummonCreature(MCCreatureIds.FlamewakerHealer, MCMiscConst.SummonPositions[1]); @@ -220,10 +235,10 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore bool CheckMajordomoExecutus() { - if (GetBossState(BossIds.Ragnaros) == EncounterState.Done) + if (GetBossState(DataTypes.Ragnaros) == EncounterState.Done) return false; - for (byte i = 0; i < BossIds.MajordomoExecutus; ++i) + for (byte i = 0; i < DataTypes.MajordomoExecutus; ++i) if (GetBossState(i) != EncounterState.Done) return false; diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Lucifron.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Lucifron.cs index c098322b3..b78e67ed9 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Lucifron.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Lucifron.cs @@ -32,7 +32,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Lucifron [Script] class boss_lucifron : BossAI { - public boss_lucifron(Creature creature) : base(creature, BossIds.Lucifron) { } + public boss_lucifron(Creature creature) : base(creature, DataTypes.Lucifron) { } public override void JustEngagedWith(Unit victim) { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Magmadar.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Magmadar.cs index 9884e767e..a275dd906 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Magmadar.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Magmadar.cs @@ -39,7 +39,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Magmadar [Script] class boss_magmadar : BossAI { - public boss_magmadar(Creature creature) : base(creature, BossIds.Magmadar) { } + public boss_magmadar(Creature creature) : base(creature, DataTypes.Magmadar) { } public override void Reset() { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/MajordomoExecutus.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/MajordomoExecutus.cs index bd5b15c6a..b05b2a980 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/MajordomoExecutus.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/MajordomoExecutus.cs @@ -52,7 +52,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Majordomo [Script] class boss_majordomo : BossAI { - public boss_majordomo(Creature creature) : base(creature, BossIds.MajordomoExecutus) { } + public boss_majordomo(Creature creature) : base(creature, DataTypes.MajordomoExecutus) { } public override void KilledUnit(Unit victim) { @@ -93,7 +93,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Majordomo { _scheduler.Update(diff); - if (instance.GetBossState(BossIds.MajordomoExecutus) != EncounterState.Done) + if (instance.GetBossState(DataTypes.MajordomoExecutus) != EncounterState.Done) { if (!UpdateVictim()) return; diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Ragnaros.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Ragnaros.cs index 02260e0fd..cd9da4f91 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Ragnaros.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Ragnaros.cs @@ -79,7 +79,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore bool _hasSubmergedOnce; bool _isBanished; - public boss_ragnaros(Creature creature) : base(creature, BossIds.Ragnaros) + public boss_ragnaros(Creature creature) : base(creature, DataTypes.Ragnaros) { Initialize(); _introState = 0; @@ -153,7 +153,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore break; case EventIds.Intro4: Talk(TextIds.SayArrival5Rag); - Creature executus = ObjectAccessor.GetCreature(me, instance.GetGuidData(BossIds.MajordomoExecutus)); + Creature executus = ObjectAccessor.GetCreature(me, instance.GetGuidData(DataTypes.MajordomoExecutus)); if (executus) Unit.Kill(me, executus); break; diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Shazzrah.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Shazzrah.cs index 8a11662b3..8340788b8 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Shazzrah.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/Shazzrah.cs @@ -48,7 +48,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Shazzrah [Script] class boss_shazzrah : BossAI { - public boss_shazzrah(Creature creature) : base(creature, BossIds.Shazzrah) { } + public boss_shazzrah(Creature creature) : base(creature, DataTypes.Shazzrah) { } public override void JustEngagedWith(Unit target) { diff --git a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/SulfuronHarbinger.cs b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/SulfuronHarbinger.cs index 3f94226da..e0f0ded84 100644 --- a/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/SulfuronHarbinger.cs +++ b/Source/Scripts/EasternKingdoms/BlackrockMountain/MoltenCore/SulfuronHarbinger.cs @@ -41,7 +41,7 @@ namespace Scripts.EasternKingdoms.BlackrockMountain.MoltenCore.Sulfuron [Script] class boss_sulfuron : BossAI { - public boss_sulfuron(Creature creature) : base(creature, BossIds.SulfuronHarbinger) { } + public boss_sulfuron(Creature creature) : base(creature, DataTypes.SulfuronHarbinger) { } public override void JustEngagedWith(Unit victim) { diff --git a/Source/Scripts/EasternKingdoms/Karazhan/InstanceKarazhan.cs b/Source/Scripts/EasternKingdoms/Karazhan/InstanceKarazhan.cs index a26a2c1d1..313adbf08 100644 --- a/Source/Scripts/EasternKingdoms/Karazhan/InstanceKarazhan.cs +++ b/Source/Scripts/EasternKingdoms/Karazhan/InstanceKarazhan.cs @@ -113,6 +113,21 @@ namespace Scripts.EasternKingdoms.Karazhan new Position(-10899.903320f, -2085.573730f, 49.474449f, 1.38f) // Rokad the Ravager }; + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.Attumen, 652), + new DungeonEncounterData(DataTypes.Moroes, 653), + new DungeonEncounterData(DataTypes.MaidenOfVirtue, 654), + new DungeonEncounterData(DataTypes.OperaPerformance, 655), + new DungeonEncounterData(DataTypes.Curator, 656), + new DungeonEncounterData(DataTypes.Aran, 658), + new DungeonEncounterData(DataTypes.Terestian, 657), + new DungeonEncounterData(DataTypes.Netherspite, 659), + new DungeonEncounterData(DataTypes.Chess, 660), + new DungeonEncounterData(DataTypes.Malchezzar, 661), + new DungeonEncounterData(DataTypes.Nightbane, 662) + }; + public instance_karazhan() : base(nameof(instance_karazhan), 532) { } class instance_karazhan_InstanceMapScript : InstanceScript @@ -142,6 +157,7 @@ namespace Scripts.EasternKingdoms.Karazhan { SetHeaders("KZ"); SetBossNumber(12); + LoadDungeonEncounterData(encounters); // 1 - Oz, 2 - Hood, 3 - Raj, this never gets altered. OperaEvent = RandomHelper.URand(1, 3); diff --git a/Source/Scripts/EasternKingdoms/MagistersTerrace/InstanceMagistersTerrace.cs b/Source/Scripts/EasternKingdoms/MagistersTerrace/InstanceMagistersTerrace.cs index 0901d3d52..24bf5bda1 100644 --- a/Source/Scripts/EasternKingdoms/MagistersTerrace/InstanceMagistersTerrace.cs +++ b/Source/Scripts/EasternKingdoms/MagistersTerrace/InstanceMagistersTerrace.cs @@ -119,6 +119,14 @@ namespace Scripts.EasternKingdoms.MagistersTerrace [Script] class instance_magisters_terrace : InstanceMapScript { + static DungeonEncounterData[] encounters = + { + new DungeonEncounterData(DataTypes.SelinFireheart, 1897), + new DungeonEncounterData(DataTypes.Vexallus, 1898), + new DungeonEncounterData(DataTypes.PriestessDelrissa, 1895), + new DungeonEncounterData(DataTypes.KaelthasSunstrider, 1894) + }; + public instance_magisters_terrace() : base(nameof(instance_magisters_terrace), 585) { } class instance_magisters_terrace_InstanceMapScript : InstanceScript @@ -132,6 +140,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace SetBossNumber(4); LoadObjectData(MiscConst.creatureData, MiscConst.gameObjectData); LoadDoorData(MiscConst.doorData); + LoadDungeonEncounterData(encounters); } public override uint GetData(uint type)