aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorModoX <moardox@gmail.com>2023-11-24 21:08:00 +0100
committerGitHub <noreply@github.com>2023-11-24 21:08:00 +0100
commit3f6f683ce4b5f4a95a2d70921de2c80de6b3a8fe (patch)
treef5601a0099a13aacef4bb115679ac51858ac9e42 /src/server/scripts/EasternKingdoms
parentb299902881cb6525b5a6cc08c5721c0c1c7401ab (diff)
Core/Waypoints: Drop waypoint_scripts table (#29437)
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp128
-rw-r--r--src/server/scripts/EasternKingdoms/Scholomance/boss_vectus.cpp31
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