diff options
Diffstat (limited to 'src')
14 files changed, 299 insertions, 191 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp index 2dcf6181879..c75a4f5ba0a 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp @@ -30,7 +30,7 @@ #include "SpellScript.h" #include "TemporarySummon.h" -enum Texts +enum BloodCouncilTexts { // Blood Queen Lana'Thel SAY_INTRO_1 = 0, @@ -63,7 +63,7 @@ enum Texts SAY_VALANAR_DEATH = 6 }; -enum Spells +enum BloodCouncilSpells { SPELL_FEIGN_DEATH = 71598, SPELL_OOC_INVOCATION_VISUAL = 70934, @@ -125,7 +125,7 @@ enum Spells SPELL_INVOCATION_VISUAL_KELESETH = 71080 }; -enum Events +enum BloodCouncilEvents { EVENT_INTRO_1 = 1, EVENT_INTRO_2, @@ -148,7 +148,7 @@ enum Events EVENT_CONTINUE_FALLING }; -enum Actions +enum BloodCouncilActions { ACTION_START_INTRO = 1, ACTION_INTRO_DONE, @@ -159,13 +159,13 @@ enum Actions ACTION_FLAME_BALL_CHASE }; -enum Points +enum BloodCouncilPoints { POINT_INTRO_DESPAWN = 380040, POINT_KINETIC_BOMB_IMPACT = 384540 }; -enum Misc +enum BloodCouncilMisc { DISPLAY_KINETIC_BOMB = 31095, SUMMON_PRINCES_GROUP = 1, @@ -216,6 +216,7 @@ uint32 const PrincesData[] = DATA_PRINCE_VALANAR }; +// 38008 - Blood Orb Controller struct boss_blood_council_controller : public BossAI { boss_blood_council_controller(Creature* creature) : BossAI(creature, DATA_BLOOD_PRINCE_COUNCIL) @@ -286,7 +287,7 @@ struct boss_blood_council_controller : public BossAI DoZoneInCombat(prince); } - events.ScheduleEvent(EVENT_INVOCATION_OF_BLOOD, Seconds(46) + Milliseconds(500)); + events.ScheduleEvent(EVENT_INVOCATION_OF_BLOOD, 46s + 500ms); _invocationOrder[0] = InvocationData(instance->GetGuidData(DATA_PRINCE_VALANAR), SPELL_INVOCATION_OF_BLOOD_VALANAR, EMOTE_VALANAR_INVOCATION, SPELL_INVOCATION_VISUAL_VALANAR); if (roll_chance_i(50)) @@ -391,7 +392,7 @@ struct boss_blood_council_controller : public BossAI } DoCastSelf(_invocationOrder[_invocationStage].spellId); - events.Repeat(Seconds(46) + Milliseconds(500)); + events.Repeat(46s + 500ms); break; } default: @@ -611,6 +612,7 @@ protected: bool _isEmpowered; }; +// 37972 - Prince Keleseth struct boss_prince_keleseth_icc : public BloodPrincesBossAI { boss_prince_keleseth_icc(Creature* creature) : BloodPrincesBossAI(creature, DATA_PRINCE_KELESETH) { } @@ -660,11 +662,11 @@ struct boss_prince_keleseth_icc : public BloodPrincesBossAI case EVENT_SHADOW_RESONANCE: Talk(SAY_KELESETH_SPECIAL); DoCastSelf(SPELL_SHADOW_RESONANCE); - events.Repeat(Seconds(10), Seconds(15)); + events.Repeat(10s, 15s); break; case EVENT_SHADOW_LANCE: _isEmpowered ? DoCastVictim(SPELL_EMPOWERED_SHADOW_LANCE) : DoCastVictim(SPELL_SHADOW_LANCE); - events.Repeat(Seconds(2)); + events.Repeat(2s); break; default: break; @@ -678,6 +680,7 @@ struct boss_prince_keleseth_icc : public BloodPrincesBossAI } }; +// 37973 - Prince Taldaram struct boss_prince_taldaram_icc : public BloodPrincesBossAI { boss_prince_taldaram_icc(Creature* creature) : BloodPrincesBossAI(creature, DATA_PRINCE_TALDARAM) { } @@ -725,18 +728,18 @@ struct boss_prince_taldaram_icc : public BloodPrincesBossAI break; case EVENT_GLITTERING_SPARKS: DoCastVictim(SPELL_GLITTERING_SPARKS); - events.Repeat(Seconds(15), Seconds(50)); + events.Repeat(15s, 50s); break; case EVENT_CONJURE_FLAME: if (_isEmpowered) { DoCastSelf(SPELL_CONJURE_EMPOWERED_FLAME); - events.Repeat(Seconds(15), Seconds(25)); + events.Repeat(15s, 25s); } else { DoCastSelf(SPELL_CONJURE_FLAME); - events.Repeat(Seconds(20), Seconds(30)); + events.Repeat(20s, 30s); } Talk(SAY_TALDARAM_SPECIAL); break; @@ -752,6 +755,7 @@ struct boss_prince_taldaram_icc : public BloodPrincesBossAI } }; +// 37970 - Prince Valanar struct boss_prince_valanar_icc : public BloodPrincesBossAI { boss_prince_valanar_icc(Creature* creature) : BloodPrincesBossAI(creature, DATA_PRINCE_VALANAR) { } @@ -819,20 +823,20 @@ struct boss_prince_valanar_icc : public BloodPrincesBossAI DoCast(target, SPELL_KINETIC_BOMB_TARGET); Talk(SAY_VALANAR_SPECIAL); } - events.Repeat(Seconds(18), Seconds(24)); + events.Repeat(18s, 24s); break; case EVENT_SHOCK_VORTEX: if (_isEmpowered) { DoCastSelf(SPELL_EMPOWERED_SHOCK_VORTEX); Talk(EMOTE_VALANAR_SHOCK_VORTEX); - events.Repeat(Seconds(30)); + events.Repeat(30s); } else { if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1, 0.0f, true)) DoCast(target, SPELL_SHOCK_VORTEX); - events.Repeat(Seconds(18), Seconds(23)); + events.Repeat(18s, 23s); } break; default: @@ -847,6 +851,7 @@ struct boss_prince_valanar_icc : public BloodPrincesBossAI } }; +// 38004 - Blood-Queen Lana'thel struct npc_blood_queen_lana_thel : public PassiveAI { npc_blood_queen_lana_thel(Creature* creature) : PassiveAI(creature), _instance(creature->GetInstanceScript()) { } @@ -865,7 +870,7 @@ struct npc_blood_queen_lana_thel : public PassiveAI case ACTION_START_INTRO: Talk(SAY_INTRO_1); _events.SetPhase(1); - _events.ScheduleEvent(EVENT_INTRO_1, Seconds(14)); + _events.ScheduleEvent(EVENT_INTRO_1, 14s); // summon a visual trigger if (Creature* summon = DoSummon(NPC_FLOATING_TRIGGER, triggerPos, 15s, TEMPSUMMON_TIMED_DESPAWN)) { @@ -908,6 +913,8 @@ private: InstanceScript* _instance; }; +// 38332 - Ball of Flame +// 38451 - Ball of Inferno Flame struct npc_ball_of_flame : public ScriptedAI { npc_ball_of_flame(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -929,7 +936,7 @@ struct npc_ball_of_flame : public ScriptedAI { me->RemoveAurasDueToSpell(SPELL_BALL_OF_FLAMES_PERIODIC); DoCastSelf(SPELL_FLAMES); - _scheduler.Schedule(Seconds(2), [this](TaskContext /*context*/) + _scheduler.Schedule(2s, [this](TaskContext /*context*/) { DoCastSelf(SPELL_FLAME_SPHERE_DEATH_EFFECT); }); @@ -974,6 +981,7 @@ private: TaskScheduler _scheduler; }; +// 38454 - Kinetic Bomb struct npc_kinetic_bomb : public ScriptedAI { npc_kinetic_bomb(Creature* creature) : ScriptedAI(creature), _x(0.f), _y(0.f), _groundZ(0.f) { } @@ -1002,7 +1010,7 @@ struct npc_kinetic_bomb : public ScriptedAI me->GetMotionMaster()->Clear(); me->GetMotionMaster()->MoveCharge(_x, _y, me->GetPositionZ() + 100.0f, me->GetSpeed(MOVE_RUN), POINT_KINETIC_BOMB_IMPACT); } - _events.RescheduleEvent(EVENT_CONTINUE_FALLING, Seconds(3)); + _events.RescheduleEvent(EVENT_CONTINUE_FALLING, 3s); } } @@ -1035,6 +1043,7 @@ private: float _groundZ; }; +// 38369 - Dark Nucleus struct npc_dark_nucleus : public ScriptedAI { npc_dark_nucleus(Creature* creature) : ScriptedAI(creature) { } @@ -1047,7 +1056,7 @@ struct npc_dark_nucleus : public ScriptedAI void JustEngagedWith(Unit* who) override { - _scheduler.Schedule(Seconds(1), [this](TaskContext targetAuraCheck) + _scheduler.Schedule(1s, [this](TaskContext targetAuraCheck) { if (Unit* victim = me->GetVictim()) { diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp index eda41e694f0..b1cba9ac525 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp @@ -29,7 +29,7 @@ #include "SpellMgr.h" #include "SpellScript.h" -enum Texts +enum LanathelTexts { SAY_AGGRO = 0, SAY_VAMPIRIC_BITE = 1, @@ -46,7 +46,7 @@ enum Texts EMOTE_BERSERK_RAID = 12 }; -enum Spells +enum LanathelSpells { SPELL_SHROUD_OF_SORROW = 70986, SPELL_FRENZIED_BLOODTHIRST_VISUAL = 71949, @@ -77,7 +77,7 @@ enum Spells SPELL_BLOOD_INFUSION_CREDIT = 72934 }; -enum Shadowmourne +enum LanathelMisc { QUEST_BLOOD_INFUSION = 24756, @@ -98,7 +98,7 @@ uint32 const vampireAuras[3][MAX_DIFFICULTY] = #define DELIRIOUS_SLASH RAID_MODE<uint32>(71623, 71624, 71625, 71626) #define PRESENCE_OF_THE_DARKFALLEN RAID_MODE<uint32>(70994, 71962, 71963, 71964) -enum Events +enum LanathelEvents { EVENT_BERSERK = 1, EVENT_VAMPIRIC_BITE = 2, @@ -115,13 +115,13 @@ enum Events EVENT_GROUP_CANCELLABLE = 2, }; -enum Guids +enum LanathelGuids { GUID_VAMPIRE = 1, GUID_BLOODBOLT = 2, }; -enum Points +enum LanathelPoints { POINT_CENTER = 1, POINT_AIR = 2, @@ -141,6 +141,7 @@ bool IsVampire(Unit const* unit) return false; } +// 37955 - Blood-Queen Lana'thel struct boss_blood_queen_lana_thel : public BossAI { boss_blood_queen_lana_thel(Creature* creature) : BossAI(creature, DATA_BLOOD_QUEEN_LANA_THEL) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp index 6b26046ca7d..03764e69c18 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp @@ -27,7 +27,7 @@ #include "SpellAuras.h" #include "SpellScript.h" -enum ScriptTexts +enum SaurfangTexts { // Deathbringer Saurfang SAY_INTRO_ALLIANCE_2 = 0, @@ -89,7 +89,7 @@ enum ScriptTexts SAY_OUTRO_ALLIANCE_20 = 3, }; -enum Spells +enum SaurfangSpells { // Deathbringer Saurfang SPELL_ZERO_POWER = 72242, @@ -124,7 +124,7 @@ enum Spells // Helper to get id of the aura on different modes (HasAura(baseId) wont work) #define BOILING_BLOOD_HELPER RAID_MODE<int32>(72385, 72441, 72442, 72443) -enum EventTypes +enum SaurfangEvents { EVENT_INTRO_ALLIANCE_1 = 1, EVENT_INTRO_ALLIANCE_2 = 2, @@ -185,14 +185,14 @@ enum EventTypes EVENT_OUTRO_HORDE_8 = 51, }; -enum Phases +enum SaurfangPhases { PHASE_INTRO_A = 1, PHASE_INTRO_H = 2, PHASE_COMBAT = 3 }; -enum Actions +enum SaurfangActions { ACTION_START_EVENT = -3781300, ACTION_CONTINUE_INTRO = -3781301, @@ -203,7 +203,7 @@ enum Actions ACTION_MARK_OF_THE_FALLEN_CHAMPION = -72293, }; -enum Misc +enum SaurfangMisc { DATA_MADE_A_MESS = 45374613, // 4537, 4613 are achievement IDs @@ -213,7 +213,7 @@ enum Misc SPAWN_GROUP_ENTRANCE_THE_DAMNED_EVENT = 275, }; -enum MovePoints +enum SaurfangPoints { POINT_SAURFANG = 3781300, POINT_FIRST_STEP = 3781301, @@ -249,6 +249,7 @@ Position const chokePos[6] = Position const finalPos = {-563.7552f, 2211.328f, 538.7848f, 0.0f}; +// 37813 - Deathbringer Saurfang struct boss_deathbringer_saurfang : public BossAI { boss_deathbringer_saurfang(Creature* creature) : BossAI(creature, DATA_DEATHBRINGER_SAURFANG), _introDone(false), _frenzied(false), _dead(false) @@ -616,6 +617,7 @@ private: uint32 const boss_deathbringer_saurfang::FightWonValue = 100000; +// 37187 - High Overlord Saurfang struct npc_high_overlord_saurfang_icc : public ScriptedAI { npc_high_overlord_saurfang_icc(Creature* creature) : ScriptedAI(creature) @@ -814,6 +816,7 @@ private: InstanceScript* _instance; }; +// 37200 - Muradin Bronzebeard struct npc_muradin_bronzebeard_icc : public ScriptedAI { npc_muradin_bronzebeard_icc(Creature* creature) : ScriptedAI(creature) @@ -949,6 +952,8 @@ private: InstanceScript* _instance; }; +// 37830 - Skybreaker Marine +// 37920 - Kor'kron Reaver struct npc_saurfang_event : public ScriptedAI { npc_saurfang_event(Creature* creature) : ScriptedAI(creature) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_festergut.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_festergut.cpp index 1392186e23f..8107a1eca80 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_festergut.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_festergut.cpp @@ -27,7 +27,7 @@ #include "SpellMgr.h" #include "SpellScript.h" -enum ScriptTexts +enum FestergutTexts { SAY_STINKY_DEAD = 0, SAY_AGGRO = 1, @@ -41,7 +41,7 @@ enum ScriptTexts SAY_DEATH = 9, }; -enum Spells +enum FestergutSpells { // Festergut SPELL_INHALE_BLIGHT = 69165, @@ -65,7 +65,7 @@ enum Spells uint32 const gaseousBlight[3] = {69157, 69162, 69164}; uint32 const gaseousBlightVisual[3] = {69126, 69152, 69154}; -enum Events +enum FestergutEvents { EVENT_BERSERK = 1, EVENT_INHALE_BLIGHT = 2, @@ -77,11 +77,12 @@ enum Events EVENT_MORTAL_WOUND = 7, }; -enum Misc +enum FestergutMisc { DATA_INOCULATED_STACK = 69291 }; +// 36626 - Festergut struct boss_festergut : public BossAI { boss_festergut(Creature* creature) : BossAI(creature, DATA_FESTERGUT) @@ -289,6 +290,7 @@ private: uint32 _inhaleCounter; }; +// 37025 - Stinky struct npc_stinky_icc : public ScriptedAI { npc_stinky_icc(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp index 24ce5a81eb9..8baa374226e 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp @@ -38,7 +38,7 @@ #include "Vehicle.h" #include <G3D/Vector3.h> -enum Texts +enum GunshipTexts { // High Overlord Saurfang SAY_SAURFANG_INTRO_1 = 0, @@ -79,7 +79,7 @@ enum Texts SAY_OVERHEAT = 0 }; -enum Events +enum GunshipEvents { // High Overlord Saurfang EVENT_INTRO_H_1 = 1, @@ -112,7 +112,7 @@ enum Events EVENT_WOUNDING_STRIKE = 17 }; -enum Spells +enum GunshipSpells { // Applied on friendly transport NPCs SPELL_FRIENDLY_BOSS_DAMAGE_MOD = 70339, @@ -193,7 +193,7 @@ enum Spells SPELL_EJECT_ALL_PASSENGERS_WIPE = 50630 }; -enum MiscData +enum GunshipMisc { ITEM_GOBLIN_ROCKET_PACK = 49278, SPELL_CREATE_ROCKET_PACK = 70055, @@ -204,7 +204,7 @@ enum MiscData MUSIC_ENCOUNTER = 17289 }; -enum EncounterActions +enum GunshipActions { ACTION_SPAWN_MAGE = 1, ACTION_SPAWN_ALL_ADDS = 2, @@ -257,7 +257,7 @@ G3D::Vector3 const SaurfangExitPath[SaurfangExitPathSize] = { 15.33203f, -30.42621f, 35.93796f } }; -enum PassengerSlots +enum GunshipPassengerSlots { // Freezing the cannons SLOT_FREEZE_MAGE = 0, @@ -399,7 +399,7 @@ public: _slotInfo = team == HORDE ? OrgrimsHammerSlotInfo : SkybreakerSlotInfo; } - bool SummonCreatures(PassengerSlots first, PassengerSlots last) + bool SummonCreatures(GunshipPassengerSlots first, GunshipPassengerSlots last) { if (!_transport) return false; @@ -430,13 +430,13 @@ public: return summoned; } - void ClearSlot(PassengerSlots slot) + void ClearSlot(GunshipPassengerSlots slot) { _controlledSlots[slot].Clear(); _respawnCooldowns[slot] = GameTime::GetGameTime() + _slotInfo[slot].Cooldown; } - bool SlotsNeedRefill(PassengerSlots first, PassengerSlots last) const + bool SlotsNeedRefill(GunshipPassengerSlots first, GunshipPassengerSlots last) const { for (int32 i = first; i <= last; ++i) if (!_controlledSlots[i]) @@ -666,6 +666,8 @@ protected: uint32 BurningPitchId; }; +// 37215 - Orgrim's Hammer +// 37540 - The Skybreaker class npc_gunship : public CreatureScript { public: @@ -845,6 +847,7 @@ class npc_gunship : public CreatureScript } }; +// 36939 - High Overlord Saurfang struct npc_high_overlord_saurfang_igb : public ScriptedAI { npc_high_overlord_saurfang_igb(Creature* creature) : ScriptedAI(creature), @@ -954,7 +957,7 @@ struct npc_high_overlord_saurfang_igb : public ScriptedAI { if (type == ACTION_CLEAR_SLOT) { - _controller.ClearSlot(PassengerSlots(data)); + _controller.ClearSlot(GunshipPassengerSlots(data)); if (data == SLOT_FREEZE_MAGE) _events.ScheduleEvent(EVENT_SUMMON_MAGE, 30s, 33500ms); } @@ -1100,6 +1103,7 @@ private: time_t _rocketeersYellCooldown; }; +// 36948 - Muradin Bronzebeard struct npc_muradin_bronzebeard_igb : public ScriptedAI { npc_muradin_bronzebeard_igb(Creature* creature) : ScriptedAI(creature), @@ -1209,7 +1213,7 @@ struct npc_muradin_bronzebeard_igb : public ScriptedAI { if (type == ACTION_CLEAR_SLOT) { - _controller.ClearSlot(PassengerSlots(data)); + _controller.ClearSlot(GunshipPassengerSlots(data)); if (data == SLOT_FREEZE_MAGE) _events.ScheduleEvent(EVENT_SUMMON_MAGE, 30s, 33500ms); } @@ -1359,6 +1363,7 @@ private: time_t _mortarYellCooldown; }; +// 37184 - Zafod Boombox struct npc_zafod_boombox : public gunship_npc_AI { npc_zafod_boombox(Creature* creature) : gunship_npc_AI(creature) { } @@ -1518,6 +1523,8 @@ private: bool _usedDesperateResolve; }; +// 36960 - Kor'kron Sergeant +// 36961 - Skybreaker Sergeant struct npc_gunship_boarding_leader : public npc_gunship_boarding_addAI { npc_gunship_boarding_leader(Creature* creature) : npc_gunship_boarding_addAI(creature) { } @@ -1569,6 +1576,8 @@ private: EventMap _events; }; +// 36950 - Skybreaker Marine +// 36957 - Kor'kron Reaver class npc_gunship_boarding_add : public CreatureScript { public: @@ -1580,6 +1589,8 @@ class npc_gunship_boarding_add : public CreatureScript } }; +// 36968 - Kor'kron Axethrower +// 36969 - Skybreaker Rifleman struct npc_gunship_gunner : public gunship_npc_AI { npc_gunship_gunner(Creature* creature) : gunship_npc_AI(creature) @@ -1611,6 +1622,8 @@ struct npc_gunship_gunner : public gunship_npc_AI } }; +// 36978 - Skybreaker Mortar Soldier +// 36982 - Kor'kron Rocketeer struct npc_gunship_rocketeer : public gunship_npc_AI { npc_gunship_rocketeer(Creature* creature) : gunship_npc_AI(creature) @@ -1642,6 +1655,8 @@ struct npc_gunship_rocketeer : public gunship_npc_AI } }; +// 37116 - Skybreaker Sorcerer +// 37117 - Kor'kron Battle-Mage struct npc_gunship_mage : public gunship_npc_AI { npc_gunship_mage(Creature* creature) : gunship_npc_AI(creature) @@ -1708,6 +1723,8 @@ Transport Seat: 255 Fall Time: 824 */ +// 36838 - Alliance Gunship Cannon +// 36839 - Horde Gunship Cannon struct npc_gunship_cannon : public PassiveAI { npc_gunship_cannon(Creature* creature) : PassiveAI(creature) { } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp index cbbcbb0446d..47e8c9d292f 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp @@ -30,7 +30,7 @@ #include "SpellScript.h" #include "TemporarySummon.h" -enum ScriptTexts +enum DeathwhisperTexts { // Lady Deathwhisper SAY_INTRO_1 = 0, @@ -56,7 +56,7 @@ enum ScriptTexts SAY_DARNAVAN_RESCUED = 1, }; -enum Spells +enum DeathwhisperSpells { // Lady Deathwhisper SPELL_MANA_BARRIER = 70842, @@ -124,7 +124,7 @@ enum Spells SPELL_SUNDER_ARMOR = 65936, }; -enum EventTypes +enum DeathwhisperEvents { // Darnavan EVENT_DARNAVAN_BLADESTORM = 27, @@ -135,7 +135,7 @@ enum EventTypes EVENT_DARNAVAN_SUNDER_ARMOR = 32, }; -enum Phases +enum DeathwhisperPhases { PHASE_ALL = 0, PHASE_INTRO = 1, @@ -143,14 +143,14 @@ enum Phases PHASE_TWO = 3 }; -enum Groups +enum DeathwhisperGroups { GROUP_INTRO = 0, GROUP_ONE = 1, GROUP_TWO = 2 }; -enum DeprogrammingData +enum DeathwhisperMisc { NPC_DARNAVAN_10 = 38472, NPC_DARNAVAN_25 = 38485, @@ -161,7 +161,7 @@ enum DeprogrammingData POINT_DESPAWN = 384721, }; -enum Actions +enum DeathwhisperActions { ACTION_START_INTRO }; @@ -198,6 +198,7 @@ class DaranavanMoveEvent : public BasicEvent Creature& _darnavan; }; +// 36855 - Lady Deathwhisper struct boss_lady_deathwhisper : public BossAI { boss_lady_deathwhisper(Creature* creature) : BossAI(creature, DATA_LADY_DEATHWHISPER), @@ -237,29 +238,29 @@ struct boss_lady_deathwhisper : public BossAI Talk(SAY_INTRO_1); _phase = PHASE_INTRO; - scheduler.Schedule(Seconds(10), GROUP_INTRO, [this](TaskContext context) + scheduler.Schedule(10s, GROUP_INTRO, [this](TaskContext context) { switch (context.GetRepeatCounter()) { case 0: Talk(SAY_INTRO_2); - context.Repeat(Seconds(21)); + context.Repeat(21s); break; case 1: Talk(SAY_INTRO_3); - context.Repeat(Seconds(11)); + context.Repeat(11s); break; case 2: Talk(SAY_INTRO_4); - context.Repeat(Seconds(9)); + context.Repeat(9s); break; case 3: Talk(SAY_INTRO_5); - context.Repeat(Seconds(21)); + context.Repeat(21s); break; case 4: Talk(SAY_INTRO_6); - context.Repeat(Seconds(10)); + context.Repeat(10s); break; case 5: Talk(SAY_INTRO_7); @@ -295,44 +296,44 @@ struct boss_lady_deathwhisper : public BossAI scheduler.CancelGroup(GROUP_INTRO); // phase-independent events scheduler - .Schedule(Minutes(10), [this](TaskContext /*context*/) + .Schedule(10min, [this](TaskContext /*context*/) { DoCastSelf(SPELL_BERSERK); Talk(SAY_BERSERK); }) - .Schedule(Seconds(17), [this](TaskContext death_and_decay) + .Schedule(17s, [this](TaskContext death_and_decay) { if (Unit* target = SelectTarget(SelectTargetMethod::Random)) DoCast(target, SPELL_DEATH_AND_DECAY); - death_and_decay.Repeat(Seconds(22), Seconds(30)); + death_and_decay.Repeat(22s, 30s); }); if (GetDifficulty() != RAID_DIFFICULTY_10MAN_NORMAL) - scheduler.Schedule(Seconds(27), [this](TaskContext dominate_mind) + scheduler.Schedule(27s, [this](TaskContext dominate_mind) { Talk(SAY_DOMINATE_MIND); std::list<Unit*> targets; SelectTargetList(targets, _dominateMindCount, SelectTargetMethod::Random, 0, 0.0f, true, false, -SPELL_DOMINATE_MIND); for (Unit* target : targets) DoCast(target, SPELL_DOMINATE_MIND); - dominate_mind.Repeat(Seconds(40), Seconds(45)); + dominate_mind.Repeat(40s, 45s); }); // phase one only scheduler - .Schedule(Seconds(5), GROUP_ONE, [this](TaskContext wave) + .Schedule(5s, GROUP_ONE, [this](TaskContext wave) { SummonWaveP1(); - wave.Repeat(Seconds(IsHeroic() ? 45 : 60)); + wave.Repeat(IsHeroic() ? 45s : 60s); }) - .Schedule(Seconds(2), GROUP_ONE, [this](TaskContext shadow_bolt) + .Schedule(2s, GROUP_ONE, [this](TaskContext shadow_bolt) { if (Unit* target = SelectTarget(SelectTargetMethod::Random)) DoCast(target, SPELL_SHADOW_BOLT); - shadow_bolt.Repeat(Milliseconds(2450), Milliseconds(3600)); + shadow_bolt.Repeat(2450ms, 3600ms); }) - .Schedule(Seconds(15), GROUP_ONE, [this](TaskContext context) + .Schedule(15s, GROUP_ONE, [this](TaskContext context) { DoImproveCultist(); - context.Repeat(Seconds(25)); + context.Repeat(25s); }); Talk(SAY_AGGRO); @@ -420,23 +421,23 @@ struct boss_lady_deathwhisper : public BossAI scheduler.CancelGroup(GROUP_ONE); scheduler - .Schedule(Seconds(12), GROUP_TWO, [this](TaskContext frostbolt) + .Schedule(12s, GROUP_TWO, [this](TaskContext frostbolt) { DoCastVictim(SPELL_FROSTBOLT); frostbolt.Repeat(); }) - .Schedule(Seconds(20), GROUP_TWO, [this](TaskContext frostboldVolley) + .Schedule(20s, GROUP_TWO, [this](TaskContext frostboldVolley) { DoCastAOE(SPELL_FROSTBOLT_VOLLEY); frostboldVolley.Repeat(); }) - .Schedule(Seconds(6), Seconds(9), GROUP_TWO, [this](TaskContext touch) + .Schedule(6s, 9s, GROUP_TWO, [this](TaskContext touch) { if (me->GetVictim()) me->AddAura(SPELL_TOUCH_OF_INSIGNIFICANCE, me->EnsureVictim()); touch.Repeat(); }) - .Schedule(Seconds(12), GROUP_TWO, [this](TaskContext summonShade) + .Schedule(12s, GROUP_TWO, [this](TaskContext summonShade) { CastSpellExtraArgs args; args.AddSpellMod(SPELLVALUE_MAX_TARGETS, Is25ManRaid() ? 2 : 1); @@ -449,10 +450,10 @@ struct boss_lady_deathwhisper : public BossAI { me->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true); me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_ATTACK_ME, true); - scheduler.Schedule(Seconds(), GROUP_TWO, [this](TaskContext context) + scheduler.Schedule(0s, GROUP_TWO, [this](TaskContext context) { SummonWaveP2(); - context.Repeat(Seconds(45)); + context.Repeat(45s); }); } } @@ -587,6 +588,9 @@ private: uint8 _phase; }; +/* 37890 - Cult Fanatic + 38009 - Reanimated Fanatic + 38135 - Deformed Fanatic */ struct npc_cult_fanatic : public ScriptedAI { npc_cult_fanatic(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -599,20 +603,20 @@ struct npc_cult_fanatic : public ScriptedAI { return !me->HasUnitState(UNIT_STATE_CASTING); }) - .Schedule(Seconds(17), [this](TaskContext vampiric_might) + .Schedule(17s, [this](TaskContext vampiric_might) { DoCastSelf(SPELL_VAMPIRIC_MIGHT); - vampiric_might.Repeat(Seconds(25)); + vampiric_might.Repeat(25s); }) - .Schedule(Seconds(12), [this](TaskContext shadow_cleave) + .Schedule(12s, [this](TaskContext shadow_cleave) { DoCastVictim(SPELL_SHADOW_CLEAVE); - shadow_cleave.Repeat(Seconds(14)); + shadow_cleave.Repeat(14s); }) - .Schedule(Seconds(10), [this](TaskContext necrotic_strike) + .Schedule(10s, [this](TaskContext necrotic_strike) { DoCastVictim(SPELL_NECROTIC_STRIKE); - necrotic_strike.Repeat(Seconds(17)); + necrotic_strike.Repeat(17s); }); } @@ -639,7 +643,7 @@ struct npc_cult_fanatic : public ScriptedAI case SPELL_DARK_MARTYRDOM_FANATIC_10H: case SPELL_DARK_MARTYRDOM_FANATIC_25H: _scheduler - .Schedule(Seconds(2), [this](TaskContext /*context*/) + .Schedule(2s, [this](TaskContext /*context*/) { me->UpdateEntry(NPC_REANIMATED_FANATIC); DoCastSelf(SPELL_PERMANENT_FEIGN_DEATH); @@ -647,7 +651,7 @@ struct npc_cult_fanatic : public ScriptedAI DoCastSelf(SPELL_FULL_HEAL, true); me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); }) - .Schedule(Seconds(6), [this](TaskContext /*context*/) + .Schedule(6s, [this](TaskContext /*context*/) { me->RemoveAurasDueToSpell(SPELL_PERMANENT_FEIGN_DEATH); me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); @@ -679,6 +683,9 @@ protected: InstanceScript* _instance; }; +/* 37949 - Cult Adherent + 38010 - Reanimated Adherent + 38136 - Empowered Adherent */ struct npc_cult_adherent : public ScriptedAI { npc_cult_adherent(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -691,24 +698,24 @@ struct npc_cult_adherent : public ScriptedAI { return !me->HasUnitState(UNIT_STATE_CASTING); }) - .Schedule(Seconds(5), [this](TaskContext deathchill) + .Schedule(5s, [this](TaskContext deathchill) { if (me->GetEntry() == NPC_EMPOWERED_ADHERENT) DoCastVictim(SPELL_DEATHCHILL_BLAST); else DoCastVictim(SPELL_DEATHCHILL_BOLT); - deathchill.Repeat(Milliseconds(2500)); + deathchill.Repeat(2500ms); }) - .Schedule(Seconds(15), [this](TaskContext shroud_of_the_occult) + .Schedule(15s, [this](TaskContext shroud_of_the_occult) { DoCastSelf(SPELL_SHROUD_OF_THE_OCCULT); - shroud_of_the_occult.Repeat(Seconds(10)); + shroud_of_the_occult.Repeat(10s); }) - .Schedule(Seconds(15), [this](TaskContext curse_of_torpor) + .Schedule(15s, [this](TaskContext curse_of_torpor) { if (Unit* target = SelectTarget(SelectTargetMethod::Random, 1)) DoCast(target, SPELL_CURSE_OF_TORPOR); - curse_of_torpor.Repeat(Seconds(18)); + curse_of_torpor.Repeat(18s); }); } @@ -730,7 +737,7 @@ struct npc_cult_adherent : public ScriptedAI case SPELL_DARK_MARTYRDOM_ADHERENT_10H: case SPELL_DARK_MARTYRDOM_ADHERENT_25H: _scheduler - .Schedule(Seconds(2), [this](TaskContext /*context*/) + .Schedule(2s, [this](TaskContext /*context*/) { me->UpdateEntry(NPC_REANIMATED_ADHERENT); DoCastSelf(SPELL_PERMANENT_FEIGN_DEATH); @@ -738,7 +745,7 @@ struct npc_cult_adherent : public ScriptedAI DoCastSelf(SPELL_FULL_HEAL, true); me->SetUnitFlag(UNIT_FLAG_UNINTERACTIBLE); }) - .Schedule(Seconds(6), [this](TaskContext /*context*/) + .Schedule(6s, [this](TaskContext /*context*/) { me->RemoveAurasDueToSpell(SPELL_PERMANENT_FEIGN_DEATH); me->RemoveUnitFlag(UNIT_FLAG_UNINTERACTIBLE); @@ -768,6 +775,7 @@ protected: InstanceScript* _instance; }; +// 38222 - Vengeful Shade struct npc_vengeful_shade : public ScriptedAI { npc_vengeful_shade(Creature* creature) : ScriptedAI(creature) { } @@ -778,12 +786,12 @@ struct npc_vengeful_shade : public ScriptedAI me->AddAura(SPELL_VENGEFUL_BLAST_PASSIVE, me); _scheduler - .Schedule(Seconds(2), [this](TaskContext /*context*/) + .Schedule(2s, [this](TaskContext /*context*/) { me->SetReactState(REACT_AGGRESSIVE); me->AI()->AttackStart(ObjectAccessor::GetUnit(*me, _targetGUID)); }) - .Schedule(Seconds(7), [this](TaskContext /*context*/) + .Schedule(7s, [this](TaskContext /*context*/) { me->KillSelf(); }); @@ -822,6 +830,7 @@ private: ObjectGuid _targetGUID; }; +// 38472, 38485 - Darnavan struct npc_darnavan : public ScriptedAI { npc_darnavan(Creature* creature) : ScriptedAI(creature) @@ -918,7 +927,7 @@ struct npc_darnavan : public ScriptedAI break; case EVENT_DARNAVAN_INTIMIDATING_SHOUT: DoCast(SPELL_INTIMIDATING_SHOUT); - _events.ScheduleEvent(EVENT_DARNAVAN_INTIMIDATING_SHOUT, Seconds(90), Minutes(2)); + _events.ScheduleEvent(EVENT_DARNAVAN_INTIMIDATING_SHOUT, 90s, 2min); break; case EVENT_DARNAVAN_MORTAL_STRIKE: DoCastVictim(SPELL_MORTAL_STRIKE); diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp index 2aa6877a392..38120428250 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp @@ -29,7 +29,7 @@ #include "SpellScript.h" #include "TemporarySummon.h" -enum ScriptTexts +enum MarrowgarTexts { SAY_ENTER_ZONE = 0, SAY_AGGRO = 1, @@ -41,7 +41,7 @@ enum ScriptTexts EMOTE_BONE_STORM = 7, }; -enum Spells +enum MarrowgarSpells { // Lord Marrowgar SPELL_BONE_SLICE = 69055, @@ -61,7 +61,7 @@ enum Spells uint32 const BoneSpikeSummonId[3] = {69062, 72669, 72670}; -enum Events +enum MarrowgarEvents { EVENT_BONE_SPIKE_GRAVEYARD = 1, EVENT_COLDFLAME = 2, @@ -78,13 +78,13 @@ enum Events EVENT_GROUP_SPECIAL = 1, }; -enum MovementPoints +enum MarrowgarPoints { POINT_TARGET_BONESTORM_PLAYER = 36612631, POINT_TARGET_COLDFLAME = 36672631, }; -enum MiscInfo +enum MarrowgarMisc { DATA_COLDFLAME_GUID = 0, @@ -98,7 +98,7 @@ enum MiscInfo MAX_BONE_SPIKE_IMMUNE = 3, }; -enum Actions +enum MarrowgarActions { ACTION_CLEAR_SPIKE_IMMUNITIES = 1, ACTION_TALK_ENTER_ZONE = 2 @@ -129,6 +129,7 @@ class BoneSpikeTargetSelector UnitAI* _ai; }; +// 36612 - Lord Marrowgar struct boss_lord_marrowgar : public BossAI { boss_lord_marrowgar(Creature* creature) : BossAI(creature, DATA_LORD_MARROWGAR) @@ -354,6 +355,7 @@ private: typedef boss_lord_marrowgar MarrowgarAI; +// 36672 - Coldflame struct npc_coldflame : public ScriptedAI { npc_coldflame(Creature* creature) : ScriptedAI(creature) { } @@ -412,6 +414,7 @@ private: EventMap _events; }; +// 36619, 38711, 38712 - Bone Spike struct npc_bone_spike : public ScriptedAI { npc_bone_spike(Creature* creature) : ScriptedAI(creature), _hasTrappedUnit(false) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp index ac7aceb2c40..5ad6d8fd660 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp @@ -33,7 +33,7 @@ #include "TemporarySummon.h" #include "Vehicle.h" -enum Say +enum PutricideTexts { // Festergut SAY_FESTERGUT_GASEOUS_BLIGHT = 0, @@ -56,7 +56,7 @@ enum Say SAY_DEATH = 13 }; -enum Spells +enum PutricideSpells { // Festergut SPELL_RELEASE_GAS_VISUAL = 69125, @@ -121,7 +121,7 @@ enum Spells #define SPELL_GASEOUS_BLOAT_HELPER RAID_MODE<uint32>(70672, 72455, 72832, 72833) -enum Events +enum PutricideEvents { // Festergut EVENT_FESTERGUT_DIES = 1, @@ -144,7 +144,7 @@ enum Events EVENT_PHASE_TRANSITION = 15 }; -enum Phases +enum PutricidePhases { PHASE_NONE = 0, PHASE_FESTERGUT = 1, @@ -154,7 +154,7 @@ enum Phases PHASE_COMBAT_3 = 6 }; -enum Points +enum PutricidePoints { POINT_FESTERGUT = 366260, POINT_ROTFACE = 366270, @@ -221,6 +221,7 @@ private: Creature* _rotface; }; +// 36678 - Professor Putricide struct boss_professor_putricide : public BossAI { boss_professor_putricide(Creature* creature) : BossAI(creature, DATA_PROFESSOR_PUTRICIDE), @@ -703,14 +704,14 @@ struct boss_professor_putricide : public BossAI } private: - void SetPhase(Phases newPhase) + void SetPhase(PutricidePhases newPhase) { _phase = newPhase; events.SetPhase(newPhase); } ObjectGuid _oozeFloodDummyGUIDs[4]; - Phases _phase; // external of EventMap because event phase gets reset on evade + PutricidePhases _phase; // external of EventMap because event phase gets reset on evade float const _baseSpeed; uint8 _oozeFloodStage; bool _experimentState; @@ -781,6 +782,7 @@ class npc_putricide_oozeAI : public ScriptedAI InstanceScript* _instance; }; +// 37697 - Volatile Ooze struct npc_volatile_ooze : public npc_putricide_oozeAI { npc_volatile_ooze(Creature* creature) : npc_putricide_oozeAI(creature, SPELL_OOZE_ERUPTION_SEARCH_PERIODIC, SPELL_OOZE_ERUPTION) { } @@ -791,6 +793,7 @@ struct npc_volatile_ooze : public npc_putricide_oozeAI } }; +// 37562 - Gas Cloud struct npc_gas_cloud : public npc_putricide_oozeAI { npc_gas_cloud(Creature* creature) : npc_putricide_oozeAI(creature, SPELL_GASEOUS_BLOAT_PROC, SPELL_EXPUNGED_GAS) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp index 1fbae959f9f..22a4bb61481 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp @@ -30,7 +30,7 @@ // KNOWN BUGS: // ~ No Slime Spray animation directly at target spot -enum Texts +enum RotfaceTexts { SAY_PRECIOUS_DIES = 0, SAY_AGGRO = 1, @@ -50,7 +50,7 @@ enum Texts EMOTE_PRECIOUS_ZOMBIES = 0, }; -enum Spells +enum RotfaceSpells { // Rotface SPELL_SLIME_SPRAY = 69508, // every 20 seconds @@ -85,7 +85,7 @@ enum Spells #define MUTATED_INFECTION RAID_MODE<int32>(69674, 71224, 73022, 73023) -enum Events +enum RotfaceEvents { // Rotface EVENT_SLIME_SPRAY = 1, @@ -101,6 +101,7 @@ enum Events EVENT_STICKY_OOZE = 8, }; +// 36627 - Rotface struct boss_rotface : public BossAI { boss_rotface(Creature* creature) : BossAI(creature, DATA_ROTFACE) @@ -238,6 +239,7 @@ private: uint32 infectionStage; }; +// 36897 - Little Ooze struct npc_little_ooze : public ScriptedAI { npc_little_ooze(Creature* creature) : ScriptedAI(creature) { } @@ -279,6 +281,7 @@ private: EventMap events; }; +// 36899 - Big Ooze struct npc_big_ooze : public ScriptedAI { npc_big_ooze(Creature* creature) : ScriptedAI(creature), instance(creature->GetInstanceScript()) { } @@ -338,6 +341,7 @@ private: InstanceScript* instance; }; +// 37217 - Precious struct npc_precious_icc : public ScriptedAI { npc_precious_icc(Creature* creature) : ScriptedAI(creature), _summons(me), _instance(creature->GetInstanceScript()) { } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp index f8a322f54a1..16e85d6804a 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp @@ -34,7 +34,7 @@ #include "SpellScript.h" #include "TemporarySummon.h" -enum Texts +enum SindragosaTexts { SAY_AGGRO = 0, // You are fools to have come to this place! The icy winds of Northrend will consume your souls! SAY_UNCHAINED_MAGIC = 1, // Suffer, mortals, as your pathetic magic betrays you! @@ -51,7 +51,7 @@ enum Texts EMOTE_BERSERK_RAID = 11 }; -enum Spells +enum SindragosaSpells { // Sindragosa SPELL_SINDRAGOSA_S_FURY = 70608, @@ -101,7 +101,7 @@ enum Spells SPELL_FROST_INFUSION = 72292, }; -enum Events +enum SindragosaEvents { // Sindragosa EVENT_BERSERK = 1, @@ -139,7 +139,7 @@ enum Events EVENT_GROUP_LAND_PHASE = 1, }; -enum FrostwingData +enum SindragosaFrostwingData { DATA_MYSTIC_BUFFET_STACK = 0, DATA_FROSTWYRM_OWNER = 1, @@ -149,7 +149,7 @@ enum FrostwingData DATA_IS_THIRD_PHASE = 5 }; -enum MovementPoints +enum SindragosaPoints { POINT_FROSTWYRM_FLY_IN = 1, POINT_FROSTWYRM_LAND = 2, @@ -160,7 +160,7 @@ enum MovementPoints POINT_LAND_GROUND = 7, }; -enum Shadowmourne +enum SindragosMisc { QUEST_FROST_INFUSION = 24757 }; @@ -224,6 +224,7 @@ class FrostBeaconSelector : NonTankTargetSelector } }; +// 36853 - Sindragosa struct boss_sindragosa : public BossAI { boss_sindragosa(Creature* creature) : BossAI(creature, DATA_SINDRAGOSA) @@ -576,6 +577,7 @@ private: bool _isThirdPhase; }; +// 36980 - Ice Tomb struct npc_ice_tomb : public ScriptedAI { npc_ice_tomb(Creature* creature) : ScriptedAI(creature) @@ -644,6 +646,7 @@ private: uint32 _existenceCheckTimer; }; +// 37534 - Spinestalker struct npc_spinestalker : public ScriptedAI { npc_spinestalker(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()), _summoned(false) { } @@ -763,6 +766,7 @@ private: bool _summoned; }; +// 37533 - Rimefang struct npc_rimefang_icc : public ScriptedAI { npc_rimefang_icc(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()), _summoned(false) @@ -917,6 +921,8 @@ private: bool _summoned; }; +// 37531 - Frostwarden Handler +// 37532 - Frostwing Whelp struct npc_sindragosa_trash : public ScriptedAI { npc_sindragosa_trash(Creature* creature) : ScriptedAI(creature) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp index 3451c02529a..4d53b78dcd2 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp @@ -28,7 +28,7 @@ #include "TemporarySummon.h" #include "VehicleDefines.h" -enum ICCSisterSvalnaTexts +enum SvalnaTexts { SAY_SVALNA_KILL_CAPTAIN = 1, // happens when she kills a captain SAY_SVALNA_KILL = 4, @@ -57,75 +57,75 @@ enum ICCSisterSvalnaTexts SAY_CROK_DEATH = 8, }; -enum ICCSisterSvalnaSpells +enum SvalnaSpells { // Crok Scourgebane - SPELL_ICEBOUND_ARMOR = 70714, - SPELL_SCOURGE_STRIKE = 71488, - SPELL_DEATH_STRIKE = 71489, + SPELL_ICEBOUND_ARMOR = 70714, + SPELL_SCOURGE_STRIKE = 71488, + SPELL_DEATH_STRIKE = 71489, // Sister Svalna - SPELL_CARESS_OF_DEATH = 70078, - SPELL_IMPALING_SPEAR_KILL = 70196, - SPELL_REVIVE_CHAMPION = 70053, - SPELL_UNDEATH = 70089, - SPELL_IMPALING_SPEAR = 71443, - SPELL_AETHER_SHIELD = 71463, - SPELL_HURL_SPEAR = 71466, - SPELL_DIVINE_SURGE = 71465, + SPELL_CARESS_OF_DEATH = 70078, + SPELL_IMPALING_SPEAR_KILL = 70196, + SPELL_REVIVE_CHAMPION = 70053, + SPELL_UNDEATH = 70089, + SPELL_IMPALING_SPEAR = 71443, + SPELL_AETHER_SHIELD = 71463, + SPELL_HURL_SPEAR = 71466, + SPELL_DIVINE_SURGE = 71465, // Captain Arnath - SPELL_DOMINATE_MIND = 14515, - SPELL_FLASH_HEAL_NORMAL = 71595, - SPELL_POWER_WORD_SHIELD_NORMAL = 71548, - SPELL_SMITE_NORMAL = 71546, - SPELL_FLASH_HEAL_UNDEAD = 71782, - SPELL_POWER_WORD_SHIELD_UNDEAD = 71780, - SPELL_SMITE_UNDEAD = 71778, + SPELL_DOMINATE_MIND = 14515, + SPELL_FLASH_HEAL_NORMAL = 71595, + SPELL_POWER_WORD_SHIELD_NORMAL = 71548, + SPELL_SMITE_NORMAL = 71546, + SPELL_FLASH_HEAL_UNDEAD = 71782, + SPELL_POWER_WORD_SHIELD_UNDEAD = 71780, + SPELL_SMITE_UNDEAD = 71778, // Captain Brandon - SPELL_CRUSADER_STRIKE = 71549, - SPELL_DIVINE_SHIELD = 71550, - SPELL_JUDGEMENT_OF_COMMAND = 71551, - SPELL_HAMMER_OF_BETRAYAL = 71784, + SPELL_CRUSADER_STRIKE = 71549, + SPELL_DIVINE_SHIELD = 71550, + SPELL_JUDGEMENT_OF_COMMAND = 71551, + SPELL_HAMMER_OF_BETRAYAL = 71784, // Captain Grondel - SPELL_CHARGE = 71553, - SPELL_MORTAL_STRIKE = 71552, - SPELL_SUNDER_ARMOR = 71554, - SPELL_CONFLAGRATION = 71785, + SPELL_CHARGE = 71553, + SPELL_MORTAL_STRIKE = 71552, + SPELL_SUNDER_ARMOR = 71554, + SPELL_CONFLAGRATION = 71785, // Captain Rupert - SPELL_FEL_IRON_BOMB_NORMAL = 71592, - SPELL_MACHINE_GUN_NORMAL = 71594, - SPELL_ROCKET_LAUNCH_NORMAL = 71590, - SPELL_FEL_IRON_BOMB_UNDEAD = 71787, - SPELL_MACHINE_GUN_UNDEAD = 71788, - SPELL_ROCKET_LAUNCH_UNDEAD = 71786, + SPELL_FEL_IRON_BOMB_NORMAL = 71592, + SPELL_MACHINE_GUN_NORMAL = 71594, + SPELL_ROCKET_LAUNCH_NORMAL = 71590, + SPELL_FEL_IRON_BOMB_UNDEAD = 71787, + SPELL_MACHINE_GUN_UNDEAD = 71788, + SPELL_ROCKET_LAUNCH_UNDEAD = 71786, // Ymirjar Vrykuls - SPELL_ARCTIC_CHILL = 71270, - SPELL_FROZEN_ORB_CAST = 71274, - SPELL_FROZEN_ORB_MISSILE = 71285, - SPELL_SPIRIT_STREAM = 69929, - SPELL_TWISTED_WINDS = 71306, - SPELL_BARBARIC_STRIKE = 71257, - SPELL_ADRENALINE_RUSH = 71258, - SPELL_WHIRLWIND = 41056, - SPELL_RAPID_SHOT = 71251, - SPELL_ICE_TRAP = 71249, - SPELL_SUMMON_WARHAWK = 71705, - SPELL_VOLLEY = 71252, - SPELL_YMIRJAR_SHOOT = 71253, - SPELL_YMIRJAR_SHADOW_BOLT = 71296, - SPELL_DEATH_EMBRACE = 71299, - SPELL_BANISH = 71298, - SPELL_SUMMON_YMIRJAR = 71303, - SPELL_AWAKEN_YMIRJAR_FALLEN = 71302, - SPELL_WARLORDS_PRESENCE = 71244, + SPELL_ARCTIC_CHILL = 71270, + SPELL_FROZEN_ORB_CAST = 71274, + SPELL_FROZEN_ORB_MISSILE = 71285, + SPELL_SPIRIT_STREAM = 69929, + SPELL_TWISTED_WINDS = 71306, + SPELL_BARBARIC_STRIKE = 71257, + SPELL_ADRENALINE_RUSH = 71258, + SPELL_WHIRLWIND = 41056, + SPELL_RAPID_SHOT = 71251, + SPELL_ICE_TRAP = 71249, + SPELL_SUMMON_WARHAWK = 71705, + SPELL_VOLLEY = 71252, + SPELL_YMIRJAR_SHOOT = 71253, + SPELL_YMIRJAR_SHADOW_BOLT = 71296, + SPELL_DEATH_EMBRACE = 71299, + SPELL_BANISH = 71298, + SPELL_SUMMON_YMIRJAR = 71303, + SPELL_AWAKEN_YMIRJAR_FALLEN = 71302, + SPELL_WARLORDS_PRESENCE = 71244 }; -enum ICCSisterSvalnaTimedEventIds +enum SvalnaEvents { // Crok Scourgebane EVENT_SCOURGE_STRIKE = 1, @@ -182,7 +182,7 @@ enum ICCSisterSvalnaTimedEventIds EVENT_YMIRJAR_SUMMON, }; -enum ICCSisterSvalnaActions +enum SvalnaActions { ACTION_KILL_CAPTAIN = 1, ACTION_START_GAUNTLET, @@ -191,12 +191,12 @@ enum ICCSisterSvalnaActions ACTION_RESET_EVENT }; -enum ICCSisterSvalnaMovePoints +enum SvalnaPoints { POINT_SVALNA_LAND = 1 }; -enum ICCYmirjarFrostWingMisc +enum SvalnaMisc { NPC_YMIRJAR_WARHAWK = 38154 }; @@ -302,6 +302,7 @@ private: Creature const* _owner; }; +// 37126 - Sister Svalna struct boss_sister_svalna : public BossAI { boss_sister_svalna(Creature* creature) : BossAI(creature, DATA_SISTER_SVALNA), _isEventInProgress(false) { } @@ -513,6 +514,7 @@ private: bool _isEventInProgress; }; +// 37129 - Crok Scourgebane struct npc_crok_scourgebane : public EscortAI { npc_crok_scourgebane(Creature* creature) : EscortAI(creature), _instance(creature->GetInstanceScript()), _respawnTime(creature->GetRespawnDelay()), _corpseDelay(creature->GetCorpseDelay()) @@ -923,6 +925,7 @@ private: bool _firstDeath; }; +// 37122 - Captain Arnath struct npc_captain_arnath : public npc_argent_captainAI { npc_captain_arnath(Creature* creature) : npc_argent_captainAI(creature) @@ -997,6 +1000,7 @@ private: } }; +// 37123 - Captain Brandon struct npc_captain_brandon : public npc_argent_captainAI { npc_captain_brandon(Creature* creature) : npc_argent_captainAI(creature) @@ -1057,6 +1061,7 @@ struct npc_captain_brandon : public npc_argent_captainAI } }; +// 37124 - Captain Grondel struct npc_captain_grondel : public npc_argent_captainAI { npc_captain_grondel(Creature* creature) : npc_argent_captainAI(creature) @@ -1116,6 +1121,7 @@ struct npc_captain_grondel : public npc_argent_captainAI } }; +// 37125 - Captain Rupert struct npc_captain_rupert : public npc_argent_captainAI { npc_captain_rupert(Creature* creature) : npc_argent_captainAI(creature) @@ -1171,6 +1177,11 @@ struct npc_captain_rupert : public npc_argent_captainAI } }; +/* 37127 - Ymirjar Frostbinder + 37132 - Ymirjar Battle-Maiden + 37133 - Ymirjar Warlord + 37134 - Ymirjar Huntress + 38125 - Ymirjar Deathbringer */ struct npc_frostwing_ymirjar_vrykul : public ScriptedAI { npc_frostwing_ymirjar_vrykul(Creature* creature) : ScriptedAI(creature), _summons(creature) @@ -1373,6 +1384,7 @@ private: SummonList _summons; }; +// 38248 - Impaling Spear struct npc_impaling_spear : public CreatureAI { npc_impaling_spear(Creature* creature) : CreatureAI(creature) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp index 60e2fdd7e7e..2f3f1eb1810 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp @@ -32,7 +32,7 @@ #include "Vehicle.h" #include "Weather.h" -enum Texts +enum LichKingTexts { // The Lich King SAY_LK_INTRO_1 = 0, @@ -73,7 +73,7 @@ enum Texts SAY_TERENAS_INTRO_3 = 2, }; -enum Spells +enum LichKingSpells { // The Lich King SPELL_PLAGUE_AVOIDANCE = 72846, // raging spirits also get it @@ -193,7 +193,7 @@ enum Spells #define HARVEST_SOUL RAID_MODE<uint32>(68980, 74325, 74296, 74297) #define ENRAGE RAID_MODE<uint32>(72143, 72146, 72147, 72148) -enum Events +enum LichKingEvents { // The Lich King // intro events @@ -276,13 +276,13 @@ enum Events EVENT_BOMB_EXPLOSION }; -enum EventGroups +enum LichKingEventGroups { EVENT_GROUP_BERSERK = 1, EVENT_GROUP_VILE_SPIRITS = 2, }; -enum Phases +enum LichKingPhases { PHASE_INTRO = 1, PHASE_ONE = 2, @@ -311,7 +311,7 @@ Position const TerenasSpawn = {495.5542f, -2517.012f, 1050.000f, 4.6993f}; Position const TerenasSpawnHeroic = {495.7080f, -2523.760f, 1050.000f, 0.0f}; Position const SpiritWardenSpawn = {495.3406f, -2529.983f, 1050.000f, 1.5592f}; -enum MovePoints +enum LichKingPoints { POINT_CENTER_1 = 1, POINT_CENTER_2 = 2, @@ -330,7 +330,7 @@ enum MovePoints POINT_CHARGE = 1003, // globally used number for charge spell effects }; -enum EncounterActions +enum LichKingActions { ACTION_START_ENCOUNTER = 0, ACTION_CONTINUE_INTRO = 1, @@ -344,7 +344,7 @@ enum EncounterActions ACTION_DISABLE_RAGING = 9 }; -enum MiscData +enum LichKingMiscData { LIGHT_DEFAULT = 2488, LIGHT_SNOWSTORM = 2490, @@ -364,7 +364,7 @@ enum MiscData MOVIE_FALL_OF_THE_LICH_KING = 16, }; -enum Misc +enum LichKingMisc { DATA_PLAGUE_STACK = 70337, DATA_VILE = 45814622 @@ -512,6 +512,7 @@ class TriggerWickedSpirit : public BasicEvent uint32 _counter; }; +// 36597 - The Lich King struct boss_the_lich_king : public BossAI { boss_the_lich_king(Creature* creature) : BossAI(creature, DATA_THE_LICH_KING) @@ -1158,6 +1159,7 @@ private: uint32 _vileSpiritExplosions; }; +// 38995 - Highlord Tirion Fordring struct npc_tirion_fordring_tft : public ScriptedAI { npc_tirion_fordring_tft(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -1290,6 +1292,7 @@ private: InstanceScript* _instance; }; +// 37698 - Shambling Horror struct npc_shambling_horror_icc : public ScriptedAI { npc_shambling_horror_icc(Creature* creature) : ScriptedAI(creature) @@ -1356,6 +1359,7 @@ private: bool _frenzied; }; +// 36701 - Raging Spirit struct npc_raging_spirit : public ScriptedAI { npc_raging_spirit(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -1441,6 +1445,7 @@ private: InstanceScript* _instance; }; +// 36609 - Val'kyr Shadowguard struct npc_valkyr_shadowguard : public ScriptedAI { npc_valkyr_shadowguard(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) @@ -1587,6 +1592,7 @@ private: InstanceScript* _instance; }; +// 36598 - Strangulate Vehicle struct npc_strangulate_vehicle : public ScriptedAI { npc_strangulate_vehicle(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -1683,6 +1689,7 @@ private: InstanceScript* _instance; }; +// 36823, 38579, 39217 - Terenas Menethil struct npc_terenas_menethil : public ScriptedAI { npc_terenas_menethil(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -1823,6 +1830,7 @@ private: InstanceScript* _instance; }; +// 36824 - Spirit Warden struct npc_spirit_warden : public ScriptedAI { npc_spirit_warden(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -1868,6 +1876,7 @@ private: InstanceScript* _instance; }; +// 39189 - Spirit Bomb struct npc_spirit_bomb : public CreatureAI { npc_spirit_bomb(Creature* creature) : CreatureAI(creature) { } @@ -1911,6 +1920,7 @@ private: EventMap _events; }; +// 38584 - Frostmourne Trigger struct npc_broken_frostmourne : public CreatureAI { npc_broken_frostmourne(Creature* creature) : CreatureAI(creature) { } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_valithria_dreamwalker.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_valithria_dreamwalker.cpp index 54aaf207e6b..352e64a7824 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_valithria_dreamwalker.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_valithria_dreamwalker.cpp @@ -27,7 +27,7 @@ #include "SpellAuraEffects.h" #include "SpellScript.h" -enum Texts +enum ValithriaTexts { // The Lich King SAY_LICH_KING_INTRO = 0, @@ -43,7 +43,7 @@ enum Texts SAY_VALITHRIA_SUCCESS = 7, }; -enum Spells +enum ValithriaSpells { // Valithria Dreamwalker SPELL_COPY_DAMAGE = 71948, @@ -107,7 +107,7 @@ enum Spells #define EMERALD_VIGOR RAID_MODE<uint32>(SPELL_EMERALD_VIGOR, SPELL_EMERALD_VIGOR, \ SPELL_TWISTED_NIGHTMARE, SPELL_TWISTED_NIGHTMARE) -enum Events +enum ValithriaEvents { // Valithria Dreamwalker EVENT_INTRO_TALK = 1, @@ -143,7 +143,7 @@ enum Events EVENT_EXPLODE, }; -enum Misc +enum ValithriaMisc { ACTION_ENTER_COMBAT = 1, MISSED_PORTALS = 2, @@ -255,6 +255,7 @@ class ValithriaDespawner : public BasicEvent Creature* _creature; }; +// 36789 - Valithria Dreamwalker struct boss_valithria_dreamwalker : public ScriptedAI { boss_valithria_dreamwalker(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()), _portalCount(RAID_MODE<uint32>(3, 8, 3, 8)) @@ -469,6 +470,7 @@ private: bool _done; }; +// 38752 - Green Dragon Combat Trigger struct npc_green_dragon_combat_trigger : public BossAI { npc_green_dragon_combat_trigger(Creature* creature) : BossAI(creature, DATA_VALITHRIA_DREAMWALKER) { } @@ -536,6 +538,7 @@ struct npc_green_dragon_combat_trigger : public BossAI } }; +// 16980 - The Lich King struct npc_the_lich_king_controller : public ScriptedAI { npc_the_lich_king_controller(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -623,6 +626,7 @@ private: InstanceScript* _instance; }; +// 37868 - Risen Archmage struct npc_risen_archmage : public ScriptedAI { npc_risen_archmage(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) @@ -738,6 +742,7 @@ private: bool _isInitialArchmage; }; +// 36791 - Blazing Skeleton struct npc_blazing_skeleton : public ScriptedAI { npc_blazing_skeleton(Creature* creature) : ScriptedAI(creature) { } @@ -787,6 +792,7 @@ private: EventMap _events; }; +// 37863 - Suppresser struct npc_suppresser : public ScriptedAI { npc_suppresser(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } @@ -844,6 +850,7 @@ private: InstanceScript* const _instance; }; +// 37934 - Blistering Zombie struct npc_blistering_zombie : public ScriptedAI { npc_blistering_zombie(Creature* creature) : ScriptedAI(creature) { } @@ -862,6 +869,7 @@ struct npc_blistering_zombie : public ScriptedAI } }; +// 37886 - Gluttonous Abomination struct npc_gluttonous_abomination : public ScriptedAI { npc_gluttonous_abomination(Creature* creature) : ScriptedAI(creature) { } @@ -910,6 +918,8 @@ private: EventMap _events; }; +// 37945 - Dream Portal +// 38430 - Nightmare Portal struct npc_dream_portal : public CreatureAI { npc_dream_portal(Creature* creature) : CreatureAI(creature), _used(false) { } @@ -937,6 +947,8 @@ private: bool _used; }; +// 37985 - Dream Cloud +// 38421 - Nightmare Cloud struct npc_dream_cloud : public ScriptedAI { npc_dream_cloud(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) { } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp index 748337fba72..490d57514cc 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp @@ -135,7 +135,7 @@ enum ICCSpells SPELL_DARK_MENDING = 71020 }; -enum ICCTimedEventIds +enum ICCEvents { // Light's Hammer RP EVENT_TIRION_INTRO_2 = 1, @@ -208,7 +208,7 @@ enum ICCMisc POINT_LAND = 1, }; -// at Light's Hammer +// 37119 - Highlord Tirion Fordring (At Light's Hammer) struct npc_highlord_tirion_fordring_lh : public ScriptedAI { npc_highlord_tirion_fordring_lh(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()) @@ -443,6 +443,7 @@ private: Unit const* _me; }; +// 38490, 38494 - Rotting Frost Giant struct npc_rotting_frost_giant : public ScriptedAI { npc_rotting_frost_giant(Creature* creature) : ScriptedAI(creature) { } @@ -507,6 +508,7 @@ private: EventMap _events; }; +// 37744 - Frost Freeze Trap struct npc_frost_freeze_trap: public ScriptedAI { npc_frost_freeze_trap(Creature* creature) : ScriptedAI(creature) @@ -542,6 +544,7 @@ private: EventMap _events; }; +// 38501 - Alchemist Adrianna struct npc_alchemist_adrianna : public ScriptedAI { npc_alchemist_adrianna(Creature* creature) : ScriptedAI(creature) { } @@ -555,6 +558,7 @@ struct npc_alchemist_adrianna : public ScriptedAI } }; +// 30298 - Invisible Stalker (Float, Uninteractible, LargeAOI) class npc_arthas_teleport_visual : public CreatureScript { public: @@ -605,6 +609,8 @@ class npc_arthas_teleport_visual : public CreatureScript } }; +// 39371 - King Varian Wrynn +// 39372 - Garrosh Hellscream struct npc_entrance_faction_leader : public ScriptedAI { npc_entrance_faction_leader(Creature* creature) : ScriptedAI(creature) { } @@ -657,6 +663,7 @@ static Emote const DarkFallensEmotes[]= EMOTE_ONESHOT_NO }; +// 38463 - Empowering Orb Visual Stalker struct npc_icc_orb_controller : public ScriptedAI { npc_icc_orb_controller(Creature* creature) : ScriptedAI(creature), _isInCombat(false), _isLongRepeat(false) { } @@ -859,6 +866,7 @@ protected: uint32 AttackSpellId; }; +// 37595 - Darkfallen Blood Knight struct npc_darkfallen_blood_knight : public DarkFallenAI { npc_darkfallen_blood_knight(Creature* creature) : DarkFallenAI(creature) { } @@ -882,6 +890,7 @@ struct npc_darkfallen_blood_knight : public DarkFallenAI } }; +// 37663 - Darkfallen Noble struct npc_darkfallen_noble : public DarkFallenAI { npc_darkfallen_noble(Creature* creature) : DarkFallenAI(creature) { } @@ -905,6 +914,7 @@ struct npc_darkfallen_noble : public DarkFallenAI } }; +// 37901 - Vampiric Fiend struct npc_vampiric_fiend : public ScriptedAI { npc_vampiric_fiend(Creature* creature) : ScriptedAI(creature) { } @@ -942,6 +952,7 @@ private: TaskScheduler _scheduler; }; +// 37664 - Darkfallen Archmage struct npc_darkfallen_archmage : public DarkFallenAI { npc_darkfallen_archmage(Creature* creature) : DarkFallenAI(creature) { } @@ -969,6 +980,7 @@ struct npc_darkfallen_archmage : public DarkFallenAI } }; +// 37571 - Darkfallen Advisor struct npc_darkfallen_advisor : public DarkFallenAI { npc_darkfallen_advisor(Creature* creature) : DarkFallenAI(creature) { } @@ -989,6 +1001,7 @@ struct npc_darkfallen_advisor : public DarkFallenAI } }; +// 37666 - Darkfallen Tactician struct npc_darkfallen_tactician : public DarkFallenAI { npc_darkfallen_tactician(Creature* creature) : DarkFallenAI(creature) { } @@ -1012,6 +1025,7 @@ struct npc_darkfallen_tactician : public DarkFallenAI } }; +// 36725 - Nerub'ar Broodkeeper struct npc_icc_nerubar_broodkeeper : public ScriptedAI { npc_icc_nerubar_broodkeeper(Creature* creature) : ScriptedAI(creature) { } @@ -1111,6 +1125,7 @@ private: EventMap _events; }; +// 201741 - Empowering Blood Orb struct go_empowering_blood_orb : public GameObjectAI { go_empowering_blood_orb(GameObject* go) : GameObjectAI(go) { } |