diff options
| author | ModoX <moardox@gmail.com> | 2023-11-24 21:08:00 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-11-24 21:08:00 +0100 |
| commit | 3f6f683ce4b5f4a95a2d70921de2c80de6b3a8fe (patch) | |
| tree | f5601a0099a13aacef4bb115679ac51858ac9e42 /src/server/scripts/EasternKingdoms | |
| parent | b299902881cb6525b5a6cc08c5721c0c1c7401ab (diff) | |
Core/Waypoints: Drop waypoint_scripts table (#29437)
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
| -rw-r--r-- | src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp | 128 | ||||
| -rw-r--r-- | src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp | 31 |
2 files changed, 156 insertions, 3 deletions
diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp index c3414c6fabb..f93716612a9 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp @@ -545,6 +545,18 @@ enum Misc_VBN QUEST_DEATH_CHALLENGE = 12733 }; +enum Paths_VBN +{ + PATH_DEATH_KNIGHT_INITIATE = 10361360, + PATH_DEATH_KNIGHT_INITIATE2 = 10361440, + PATH_DEATH_KNIGHT_INITIATE3 = 10362320, + PATH_DEATH_KNIGHT_INITIATE4 = 10362400, + PATH_DEATH_KNIGHT_INITIATE5 = 10362480, + PATH_DEATH_KNIGHT_INITIATE6 = 10363520, + PATH_DEATH_KNIGHT_INITIATE7 = 10363680, + PATH_DEATH_KNIGHT_INITIATE8 = 10363760, +}; + class npc_death_knight_initiate : public CreatureScript { public: @@ -693,6 +705,25 @@ public: } return true; } + + void WaypointPathEnded(uint32 /*nodeId*/, uint32 pathId) override + { + switch (pathId) + { + case PATH_DEATH_KNIGHT_INITIATE: + case PATH_DEATH_KNIGHT_INITIATE2: + case PATH_DEATH_KNIGHT_INITIATE3: + case PATH_DEATH_KNIGHT_INITIATE4: + case PATH_DEATH_KNIGHT_INITIATE5: + case PATH_DEATH_KNIGHT_INITIATE6: + case PATH_DEATH_KNIGHT_INITIATE7: + case PATH_DEATH_KNIGHT_INITIATE8: + me->DespawnOrUnsummon(1s); + break; + default: + break; + } + } }; CreatureAI* GetAI(Creature* creature) const override @@ -1138,6 +1169,51 @@ class spell_chapter1_runeforging_credit : public SpellScript } }; +enum HearthglenCrusaderPaths : uint32 +{ + PATH_HEARTHGLEN_CRUSADER_DESPAWN = 10445360, + PATH_HEARTHGLEN_CRUSADER_DESPAWN2 = 10445600, + PATH_HEARTHGLEN_CRUSADER_DESPAWN3 = 10448640, + PATH_HEARTHGLEN_CRUSADER_DESPAWN4 = 10449200, + PATH_HEARTHGLEN_CRUSADER_DESPAWN5 = 10452240, + PATH_HEARTHGLEN_CRUSADER_DESPAWN6 = 10452880, + PATH_HEARTHGLEN_CRUSADER_DESPAWN7 = 10452960, + PATH_HEARTHGLEN_CRUSADER_DESPAWN8 = 10453040, + PATH_HEARTHGLEN_CRUSADER_DESPAWN9 = 10453520, + PATH_HEARTHGLEN_CRUSADER_DESPAWN10 = 10453680, + PATH_HEARTHGLEN_CRUSADER_DESPAWN11 = 10454000, + PATH_HEARTHGLEN_CRUSADER_DESPAWN12 = 10454080, + PATH_HEARTHGLEN_CRUSADER_DESPAWN13 = 10454160, + PATH_HEARTHGLEN_CRUSADER_DESPAWN14 = 10454320, + PATH_HEARTHGLEN_CRUSADER_DESPAWN15 = 10454560, + PATH_HEARTHGLEN_CRUSADER_DESPAWN16 = 10459440, + PATH_HEARTHGLEN_CRUSADER_DESPAWN17 = 10460320, + PATH_HEARTHGLEN_CRUSADER_DESPAWN18 = 10463040, + PATH_HEARTHGLEN_CRUSADER_DESPAWN19 = 10463120, + PATH_HEARTHGLEN_CRUSADER_DESPAWN20 = 10463280, + PATH_HEARTHGLEN_CRUSADER_DESPAWN21 = 10463360, + PATH_HEARTHGLEN_CRUSADER_DESPAWN22 = 10463520, + PATH_HEARTHGLEN_CRUSADER_DESPAWN23 = 10463680, + PATH_HEARTHGLEN_CRUSADER_DESPAWN24 = 10463840, + PATH_HEARTHGLEN_CRUSADER_DESPAWN25 = 10464080, + PATH_HEARTHGLEN_CRUSADER_DESPAWN26 = 10464160, + PATH_HEARTHGLEN_CRUSADER_DESPAWN27 = 10464240, + PATH_HEARTHGLEN_CRUSADER_DESPAWN28 = 10464320, + PATH_HEARTHGLEN_CRUSADER_DESPAWN29 = 10464400, + PATH_HEARTHGLEN_CRUSADER_DESPAWN30 = 10464480, + PATH_HEARTHGLEN_CRUSADER_DESPAWN31 = 10464720, + PATH_HEARTHGLEN_CRUSADER_DESPAWN32 = 10464800, + PATH_HEARTHGLEN_CRUSADER_DESPAWN33 = 10464880, + PATH_HEARTHGLEN_CRUSADER_DESPAWN34 = 10464960, + PATH_HEARTHGLEN_CRUSADER_DESPAWN35 = 10465040, + PATH_HEARTHGLEN_CRUSADER_DESPAWN36 = 10465520, + PATH_HEARTHGLEN_CRUSADER_DESPAWN37 = 10465600, + PATH_HEARTHGLEN_CRUSADER_DESPAWN38 = 10466000, + PATH_HEARTHGLEN_CRUSADER_DESPAWN39 = 10466160, + PATH_HEARTHGLEN_CRUSADER_DESPAWN40 = 10466320, + PATH_HEARTHGLEN_CRUSADER_DESPAWN41 = 10466400, +}; + // 29102 - Hearthglen Crusader // 29103 - Tirisfal Crusader struct npc_hearthglen_crusader : public ScriptedAI @@ -1187,6 +1263,58 @@ struct npc_hearthglen_crusader : public ScriptedAI DoMeleeAttackIfReady(); } + void WaypointPathEnded(uint32 /*nodeId*/, uint32 pathId) override + { + switch (pathId) + { + case PATH_HEARTHGLEN_CRUSADER_DESPAWN: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN2: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN3: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN4: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN5: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN6: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN7: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN8: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN9: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN10: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN11: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN12: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN13: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN14: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN15: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN16: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN17: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN18: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN19: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN20: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN21: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN22: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN23: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN24: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN25: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN26: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN27: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN28: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN29: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN30: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN31: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN32: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN33: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN34: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN35: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN36: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN37: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN38: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN39: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN40: + case PATH_HEARTHGLEN_CRUSADER_DESPAWN41: + me->DespawnOrUnsummon(1s); + break; + default: + break; + } + } + private: float _minimumRange; }; diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp index e01f0b9c9eb..9d652f8f5de 100644 --- a/src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp +++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp @@ -19,12 +19,12 @@ #include "ScriptMgr.h" #include "ScriptedCreature.h" -enum Emotes +enum VectusEmotes { EMOTE_FRENZY = 0 }; -enum Spells +enum VectusSpells { SPELL_FLAMESTRIKE = 18399, SPELL_BLAST_WAVE = 16046, @@ -32,13 +32,25 @@ enum Spells SPELL_FRENZY = 8269 // 28371 }; -enum Events +enum VectusEvents { EVENT_FIRE_SHIELD = 1, EVENT_BLAST_WAVE, EVENT_FRENZY }; +enum VectusTalks +{ + TALK_IDLE = 1, + TALK_IDLE2 = 2, + TALK_IDLE3 = 3 +}; + +enum VectusPaths +{ + PATH_VECTUS_IDLE = 3904400 +}; + class boss_vectus : public CreatureScript { public: @@ -102,6 +114,19 @@ public: DoMeleeAttackIfReady(); } + + void WaypointReached(uint32 waypointId, uint32 pathId) override + { + if (pathId != PATH_VECTUS_IDLE) + return; + + if (waypointId == 2) + Talk(TALK_IDLE); + else if (waypointId == 3) + Talk(TALK_IDLE2); + else if (waypointId == 4) + Talk(TALK_IDLE3); + } }; CreatureAI* GetAI(Creature* creature) const override |
