diff options
| author | Gacko <gacko28@gmx.de> | 2012-12-06 18:08:21 +0100 |
|---|---|---|
| committer | Gacko <gacko28@gmx.de> | 2012-12-06 18:08:21 +0100 |
| commit | f9c0e3c91b7cdb543681906bb53e86a00d0caa55 (patch) | |
| tree | 028f45d4de296b25d3812019d1ab0a6db8df97d0 /src/server/scripts/Outland | |
| parent | 57e9a97bc4aec8cdcf097c8b79d8f83b7dada56c (diff) | |
Core/DB: Creature text for 53 script files
Diffstat (limited to 'src/server/scripts/Outland')
36 files changed, 913 insertions, 1018 deletions
diff --git a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp index a8b4b1797cb..5739aa49549 100644 --- a/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp +++ b/src/server/scripts/Outland/Auchindoun/AuchenaiCrypts/boss_exarch_maladaar.cpp @@ -126,30 +126,23 @@ public: }; -#define SAY_INTRO -1558000 -#define SAY_SUMMON -1558001 - -#define SAY_AGGRO_1 -1558002 -#define SAY_AGGRO_2 -1558003 -#define SAY_AGGRO_3 -1558004 - -#define SAY_ROAR -1558005 -#define SAY_SOUL_CLEAVE -1558006 - -#define SAY_SLAY_1 -1558007 -#define SAY_SLAY_2 -1558008 - -#define SAY_DEATH -1558009 - -#define SPELL_RIBBON_OF_SOULS 32422 -#define SPELL_SOUL_SCREAM 32421 - -#define SPELL_STOLEN_SOUL 32346 -#define SPELL_STOLEN_SOUL_VISUAL 32395 - -#define SPELL_SUMMON_AVATAR 32424 - -#define ENTRY_STOLEN_SOUL 18441 +enum ExarchMaladaar +{ + SAY_INTRO = 0, + SAY_SUMMON = 1, + SAY_AGGRO = 2, + SAY_ROAR = 3, + SAY_SLAY = 4, + SAY_DEATH = 5, + + SPELL_RIBBON_OF_SOULS = 32422, + SPELL_SOUL_SCREAM = 32421, + SPELL_STOLEN_SOUL = 32346, + SPELL_STOLEN_SOUL_VISUAL = 32395, + SPELL_SUMMON_AVATAR = 32424, + + ENTRY_STOLEN_SOUL = 18441 +}; class boss_exarch_maladaar : public CreatureScript { @@ -196,7 +189,7 @@ public: { if (!HasTaunted && me->IsWithinDistInMap(who, 150.0f)) { - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); HasTaunted = true; } @@ -205,7 +198,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void JustSummoned(Creature* summoned) @@ -231,12 +224,12 @@ public: if (rand()%2) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); //When Exarch Maladar is defeated D'ore appear. me->SummonCreature(19412, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN, 600000); } @@ -251,7 +244,7 @@ public: if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); DoCast(me, SPELL_SUMMON_AVATAR); Avatar_summoned = true; @@ -267,11 +260,7 @@ public: if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); - uint32 i = urand(1, 2); - if (i == 1) - DoScriptText(SAY_ROAR, me); - else - DoScriptText(SAY_SOUL_CLEAVE, me); + Talk(SAY_ROAR); soulmodel = target->GetDisplayId(); soulholder = target->GetGUID(); diff --git a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_nexusprince_shaffar.cpp b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_nexusprince_shaffar.cpp index 351f30c926f..f7a2eb87d67 100644 --- a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_nexusprince_shaffar.cpp +++ b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_nexusprince_shaffar.cpp @@ -33,14 +33,11 @@ EndContentData */ enum ePrince { - SAY_INTRO = -1557000, - SAY_AGGRO_1 = -1557001, - SAY_AGGRO_2 = -1557002, - SAY_AGGRO_3 = -1557003, - SAY_SLAY_1 = -1557004, - SAY_SLAY_2 = -1557005, - SAY_SUMMON = -1557006, - SAY_DEAD = -1557007, + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_SUMMON = 3, + SAY_DEAD = 4, SPELL_BLINK = 34605, SPELL_FROSTBOLT = 32364, @@ -110,14 +107,14 @@ public: { if (!HasTaunted && who->GetTypeId() == TYPEID_PLAYER && me->IsWithinDistInMap(who, 100.0f)) { - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); HasTaunted = true; } } void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); DoZoneInCombat(); summons.DoZoneInCombat(); @@ -143,12 +140,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEAD, me); + Talk(SAY_DEAD); summons.DespawnAll(); } @@ -203,7 +200,7 @@ public: me->InterruptNonMeleeSpells(true); if (!urand(0, 3)) - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); DoCast(me, SPELL_ETHEREAL_BEACON, true); diff --git a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp index 459ba3a8f86..f174091311b 100644 --- a/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp +++ b/src/server/scripts/Outland/Auchindoun/ManaTombs/boss_pandemonius.cpp @@ -26,21 +26,19 @@ EndScriptData */ #include "ScriptMgr.h" #include "ScriptedCreature.h" -#define SAY_AGGRO_1 -1557008 -#define SAY_AGGRO_2 -1557009 -#define SAY_AGGRO_3 -1557010 - -#define SAY_KILL_1 -1557011 -#define SAY_KILL_2 -1557012 - -#define SAY_DEATH -1557013 - -#define EMOTE_DARK_SHELL -1557014 +enum Pandemonius +{ + SAY_AGGRO = 0, + SAY_KILL = 1, + SAY_DEATH = 2, + EMOTE_DARK_SHELL = 3, + + SPELL_VOID_BLAST = 32325, + H_SPELL_VOID_BLAST = 38760, + SPELL_DARK_SHELL = 32358, + H_SPELL_DARK_SHELL = 38759 +}; -#define SPELL_VOID_BLAST 32325 -#define H_SPELL_VOID_BLAST 38760 -#define SPELL_DARK_SHELL 32358 -#define H_SPELL_DARK_SHELL 38759 class boss_pandemonius : public CreatureScript { @@ -71,17 +69,17 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void UpdateAI(const uint32 diff) @@ -112,7 +110,7 @@ public: if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); - DoScriptText(EMOTE_DARK_SHELL, me); + Talk(EMOTE_DARK_SHELL); DoCast(me, SPELL_DARK_SHELL); DarkShell_Timer = 20000; diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp index 0a85cf1dc5b..5bb396965a6 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp @@ -26,28 +26,25 @@ EndScriptData */ #include "ScriptMgr.h" #include "ScriptedCreature.h" -#define SAY_SUMMON -1556000 - -#define SAY_AGGRO_1 -1556001 -#define SAY_AGGRO_2 -1556002 -#define SAY_AGGRO_3 -1556003 - -#define SAY_SLAY_1 -1556004 -#define SAY_SLAY_2 -1556005 - -#define SAY_DEATH -1556006 - -#define SPELL_FROST_SHOCK 21401 //37865 -#define SPELL_FLAME_SHOCK 34354 -#define SPELL_SHADOW_SHOCK 30138 -#define SPELL_ARCANE_SHOCK 37132 - -#define SPELL_CHAIN_LIGHTNING 15659 //15305 - -#define SPELL_SUMMON_SYTH_FIRE 33537 // Spawns 19203 -#define SPELL_SUMMON_SYTH_ARCANE 33538 // Spawns 19205 -#define SPELL_SUMMON_SYTH_FROST 33539 // Spawns 19204 -#define SPELL_SUMMON_SYTH_SHADOW 33540 // Spawns 19206 +enum DarkweaverSyth +{ + SAY_SUMMON = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_DEATH = 3, + + SPELL_FROST_SHOCK = 21401, //37865 + SPELL_FLAME_SHOCK = 34354, + SPELL_SHADOW_SHOCK = 30138, + SPELL_ARCANE_SHOCK = 37132, + + SPELL_CHAIN_LIGHTNING = 15659, //15305 + + SPELL_SUMMON_SYTH_FIRE = 33537, // Spawns 19203 + SPELL_SUMMON_SYTH_ARCANE = 33538, // Spawns 19205 + SPELL_SUMMON_SYTH_FROST = 33539, // Spawns 19204 + SPELL_SUMMON_SYTH_SHADOW = 33540 // Spawns 19206 +}; #define SPELL_FLAME_BUFFET DUNGEON_MODE(33526, 38141) #define SPELL_ARCANE_BUFFET DUNGEON_MODE(33527, 38138) @@ -95,12 +92,12 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void KilledUnit(Unit* /*victim*/) @@ -108,7 +105,7 @@ public: if (rand()%2) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustSummoned(Creature* summoned) @@ -119,7 +116,7 @@ public: void SythSummoning() { - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(false); diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp index ec35d6c80b3..07169f031ab 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_tailonking_ikiss.cpp @@ -27,31 +27,26 @@ EndScriptData */ #include "ScriptedCreature.h" #include "sethekk_halls.h" -#define SAY_INTRO -1556007 - -#define SAY_AGGRO_1 -1556008 -#define SAY_AGGRO_2 -1556009 -#define SAY_AGGRO_3 -1556010 - -#define SAY_SLAY_1 -1556011 -#define SAY_SLAY_2 -1556012 -#define SAY_DEATH -1556013 -#define EMOTE_ARCANE_EXP -1556015 - -#define SPELL_BLINK 38194 -#define SPELL_BLINK_TELEPORT 38203 -#define SPELL_MANA_SHIELD 38151 -#define SPELL_ARCANE_BUBBLE 9438 -#define H_SPELL_SLOW 35032 - -#define SPELL_POLYMORPH 38245 -#define H_SPELL_POLYMORPH 43309 - -#define SPELL_ARCANE_VOLLEY 35059 -#define H_SPELL_ARCANE_VOLLEY 40424 - -#define SPELL_ARCANE_EXPLOSION 38197 -#define H_SPELL_ARCANE_EXPLOSION 40425 +enum TailonkingIkiss +{ + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_DEATH = 3, + EMOTE_ARCANE_EXP = 4, + + SPELL_BLINK = 38194, + SPELL_BLINK_TELEPORT = 38203, + SPELL_MANA_SHIELD = 38151, + SPELL_ARCANE_BUBBLE = 9438, + H_SPELL_SLOW = 35032, + SPELL_POLYMORPH = 38245, + H_SPELL_POLYMORPH = 43309, + SPELL_ARCANE_VOLLEY = 35059, + H_SPELL_ARCANE_VOLLEY = 40424, + SPELL_ARCANE_EXPLOSION = 38197, + H_SPELL_ARCANE_EXPLOSION = 40425 +}; class boss_talon_king_ikiss : public CreatureScript { @@ -99,7 +94,7 @@ public: if (!Intro && me->IsWithinDistInMap(who, 100)) { Intro = true; - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); } if (!me->CanFly() && me->GetDistanceZ(who) > CREATURE_Z_ATTACK_RANGE) @@ -116,12 +111,12 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_IKISSDOOREVENT, DONE); @@ -129,7 +124,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void UpdateAI(const uint32 diff) @@ -183,7 +178,7 @@ public: if (Blink_Timer <= diff) { - DoScriptText(EMOTE_ARCANE_EXP, me); + Talk(EMOTE_ARCANE_EXP); if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) { diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_ambassador_hellmaw.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_ambassador_hellmaw.cpp index a109e3738b1..c93143c1c5c 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_ambassador_hellmaw.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_ambassador_hellmaw.cpp @@ -30,14 +30,11 @@ EndScriptData */ enum eEnums { - SAY_INTRO = -1555000, - SAY_AGGRO1 = -1555001, - SAY_AGGRO2 = -1555002, - SAY_AGGRO3 = -1555003, - SAY_HELP = -1555004, - SAY_SLAY1 = -1555005, - SAY_SLAY2 = -1555006, - SAY_DEATH = -1555007, + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_HELP = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, SPELL_BANISH = 30231, SPELL_CORROSIVE_ACID = 33551, @@ -119,7 +116,7 @@ public: { if (instance->GetData(TYPE_HELLMAW) != FAIL) { - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); Start(true, false, 0, NULL, false, true); } @@ -129,17 +126,17 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3), me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(TYPE_HELLMAW, DONE); diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp index e7063e479ee..eb06cce87fc 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp @@ -27,33 +27,26 @@ EndScriptData */ #include "ScriptedCreature.h" #include "shadow_labyrinth.h" -#define SPELL_INCITE_CHAOS 33676 -#define SPELL_INCITE_CHAOS_B 33684 //debuff applied to each member of party -#define SPELL_CHARGE 33709 -#define SPELL_WAR_STOMP 33707 - -#define SAY_INTRO1 -1555008 //not used -#define SAY_INTRO2 -1555009 //not used -#define SAY_INTRO3 -1555010 //not used -#define SAY_AGGRO1 -1555011 -#define SAY_AGGRO2 -1555012 -#define SAY_AGGRO3 -1555013 -#define SAY_SLAY1 -1555014 -#define SAY_SLAY2 -1555015 -#define SAY_HELP -1555016 //not used -#define SAY_DEATH -1555017 - -//below, not used -#define SAY2_INTRO1 -1555018 -#define SAY2_INTRO2 -1555019 -#define SAY2_INTRO3 -1555020 -#define SAY2_AGGRO1 -1555021 -#define SAY2_AGGRO2 -1555022 -#define SAY2_AGGRO3 -1555023 -#define SAY2_SLAY1 -1555024 -#define SAY2_SLAY2 -1555025 -#define SAY2_HELP -1555026 -#define SAY2_DEATH -1555027 +enum BlackheartTheInciter +{ + SPELL_INCITE_CHAOS = 33676, + SPELL_INCITE_CHAOS_B = 33684, //debuff applied to each member of party + SPELL_CHARGE = 33709, + SPELL_WAR_STOMP = 33707, + + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_HELP = 3, + SAY_DEATH = 4, + + //below, not used + SAY2_INTRO = 5, + SAY2_AGGRO = 6, + SAY2_SLAY = 7, + SAY2_HELP = 8, + SAY2_DEATH = 9 +}; class boss_blackheart_the_inciter : public CreatureScript { @@ -94,12 +87,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_BLACKHEARTTHEINCITEREVENT, DONE); @@ -107,7 +100,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3), me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_BLACKHEARTTHEINCITEREVENT, IN_PROGRESS); diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp index 303a30bea8f..d7dbb8ef722 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp @@ -28,30 +28,30 @@ EndScriptData */ #include "shadow_labyrinth.h" #include "Player.h" -#define SAY_INTRO -1555028 -#define SAY_AGGRO1 -1555029 -#define SAY_AGGRO2 -1555030 -#define SAY_AGGRO3 -1555031 -#define SAY_HELP -1555032 -#define SAY_SLAY1 -1555033 -#define SAY_SLAY2 -1555034 -#define SAY_DEATH -1555035 - -#define SPELL_RAIN_OF_FIRE 33617 -#define H_SPELL_RAIN_OF_FIRE 39363 - -#define SPELL_DRAW_SHADOWS 33563 -#define SPELL_SHADOWBOLT_VOLLEY 33841 -#define SPELL_BANISH 38791 - -#define MOB_VOID_TRAVELER 19226 -#define SPELL_SACRIFICE 33587 -#define SPELL_SHADOW_NOVA 33846 -#define SPELL_EMPOWERING_SHADOWS 33783 -#define H_SPELL_EMPOWERING_SHADOWS 39364 - -#define MOB_VOID_PORTAL 19224 -#define SPELL_VOID_PORTAL_VISUAL 33569 +enum GrandmasterVorpil +{ + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_HELP = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, + + SPELL_RAIN_OF_FIRE = 33617, + H_SPELL_RAIN_OF_FIRE = 39363, + + SPELL_DRAW_SHADOWS = 33563, + SPELL_SHADOWBOLT_VOLLEY = 33841, + SPELL_BANISH = 38791, + + MOB_VOID_TRAVELER = 19226, + SPELL_SACRIFICE = 33587, + SPELL_SHADOW_NOVA = 33846, + SPELL_EMPOWERING_SHADOWS = 33783, + H_SPELL_EMPOWERING_SHADOWS = 39364, + + MOB_VOID_PORTAL = 19224, + SPELL_VOID_PORTAL_VISUAL = 33569 +}; float VorpilPosition[3] = {-252.8820f, -264.3030f, 17.1f}; @@ -219,7 +219,7 @@ public: me->SummonCreature(MOB_VOID_TRAVELER, VoidPortalCoords[pos][0], VoidPortalCoords[pos][1], VoidPortalCoords[pos][2], 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 5000); if (!HelpYell) { - DoScriptText(SAY_HELP, me); + Talk(SAY_HELP); HelpYell = true; } } @@ -232,12 +232,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); destroyPortals(); if (instance) @@ -246,7 +246,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3), me); + Talk(SAY_AGGRO); summonPortals(); if (instance) @@ -259,7 +259,7 @@ public: if (!Intro && me->IsWithinLOSInMap(who)&& me->IsWithinDistInMap(who, 100) && me->IsValidAttackTarget(who)) { - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); Intro = true; } } diff --git a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_murmur.cpp b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_murmur.cpp index 1503c9f7234..9ca9f7d089c 100644 --- a/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_murmur.cpp +++ b/src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_murmur.cpp @@ -28,15 +28,20 @@ EndScriptData */ #include "shadow_labyrinth.h" #include "SpellInfo.h" -#define EMOTE_SONIC_BOOM -1555036 +enum Murmur +{ + SPELL_RESONANCE = 33657, + SPELL_MAGNETIC_PULL = 33689, + SPELL_SONIC_SHOCK = 38797, + SPELL_THUNDERING_STORM = 39365, + EMOTE_SONIC_BOOM = 0 +}; #define SPELL_SONIC_BOOM_CAST DUNGEON_MODE(33923, 38796) #define SPELL_SONIC_BOOM_EFFECT DUNGEON_MODE(33666, 38795) -#define SPELL_RESONANCE 33657 + #define SPELL_MURMURS_TOUCH DUNGEON_MODE(33711, 38794) -#define SPELL_MAGNETIC_PULL 33689 -#define SPELL_SONIC_SHOCK 38797 -#define SPELL_THUNDERING_STORM 39365 + class boss_murmur : public CreatureScript { @@ -123,7 +128,7 @@ public: } if (SonicBoom_Timer <= diff) { - DoScriptText(EMOTE_SONIC_BOOM, me); + Talk(EMOTE_SONIC_BOOM); DoCast(me, SPELL_SONIC_BOOM_CAST); SonicBoom_Timer = 30000; SonicBoom = true; diff --git a/src/server/scripts/Outland/BlackTemple/boss_bloodboil.cpp b/src/server/scripts/Outland/BlackTemple/boss_bloodboil.cpp index fd775df3392..427c23bafa6 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_bloodboil.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_bloodboil.cpp @@ -27,32 +27,33 @@ EndScriptData */ #include "ScriptedCreature.h" #include "black_temple.h" -//Speech'n'Sound -#define SAY_AGGRO -1564029 -#define SAY_SLAY1 -1564030 -#define SAY_SLAY2 -1564031 -#define SAY_SPECIAL1 -1564032 -#define SAY_SPECIAL2 -1564033 -#define SAY_ENRAGE1 -1564034 -#define SAY_ENRAGE2 -1564035 -#define SAY_DEATH -1564036 - -//Spells -#define SPELL_ACID_GEYSER 40630 -#define SPELL_ACIDIC_WOUND 40481 -#define SPELL_ARCING_SMASH 40599 -#define SPELL_BLOODBOIL 42005 // This spell is AoE whereas it shouldn't be -#define SPELL_FEL_ACID 40508 -#define SPELL_FEL_RAGE_SELF 40594 -#define SPELL_FEL_RAGE_TARGET 40604 -#define SPELL_FEL_RAGE_2 40616 -#define SPELL_FEL_RAGE_3 41625 -#define SPELL_BEWILDERING_STRIKE 40491 -#define SPELL_EJECT1 40486 // 1000 Physical damage + knockback + script effect (should handle threat reduction I think) -#define SPELL_EJECT2 40597 // 1000 Physical damage + Stun (used in phase 2?) -#define SPELL_TAUNT_GURTOGG 40603 -#define SPELL_INSIGNIFIGANCE 40618 -#define SPELL_BERSERK 45078 +enum Bloodboil +{ + //Speech'n'Sound + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_SPECIAL = 2, + SAY_ENRAGE = 3, + SAY_DEATH = 4, + + //Spells + SPELL_ACID_GEYSER = 40630, + SPELL_ACIDIC_WOUND = 40481, + SPELL_ARCING_SMASH = 40599, + SPELL_BLOODBOIL = 42005, // This spell is AoE whereas it shouldn't be + SPELL_FEL_ACID = 40508, + SPELL_FEL_RAGE_SELF = 40594, + SPELL_FEL_RAGE_TARGET = 40604, + SPELL_FEL_RAGE_2 = 40616, + SPELL_FEL_RAGE_3 = 41625, + SPELL_BEWILDERING_STRIKE = 40491, + SPELL_EJECT1 = 40486, // 1000 Physical damage + knockback + script effect (should handle threat reduction I think) + SPELL_EJECT2 = 40597, // 1000 Physical damage + Stun (used in phase 2?) + SPELL_TAUNT_GURTOGG = 40603, + SPELL_INSIGNIFIGANCE = 40618, + SPELL_BERSERK = 45078 +}; + //This is used to sort the players by distance in preparation for the Bloodboil cast. @@ -121,14 +122,14 @@ public: void EnterCombat(Unit* /*who*/) { DoZoneInCombat(); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_GURTOGGBLOODBOILEVENT, IN_PROGRESS); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) @@ -136,7 +137,7 @@ public: if (instance) instance->SetData(DATA_GURTOGGBLOODBOILEVENT, DONE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } // Note: This seems like a very complicated fix. The fix needs to be handled by the core, as implementation of limited-target AoE spells are still not limited. @@ -219,7 +220,7 @@ public: if (EnrageTimer <= diff) { DoCast(me, SPELL_BERSERK); - DoScriptText(RAND(SAY_ENRAGE1, SAY_ENRAGE2), me); + Talk(SAY_ENRAGE); } else EnrageTimer -= diff; } @@ -302,7 +303,7 @@ public: //Cast this without triggered so that it appears in combat logs and shows visual. DoCast(me, SPELL_FEL_RAGE_SELF); - DoScriptText(RAND(SAY_SPECIAL1, SAY_SPECIAL2), me); + Talk(SAY_SPECIAL); AcidGeyserTimer = 1000; PhaseChangeTimer = 30000; diff --git a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp index ec25a8f9f60..88e7c063c69 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp @@ -27,31 +27,29 @@ EndScriptData */ #include "ScriptedCreature.h" #include "black_temple.h" -//Speech'n'Sounds -#define SAY_TAUNT1 -1564018 -#define SAY_TAUNT2 -1564019 -#define SAY_TAUNT3 -1564020 -#define SAY_AGGRO -1564021 -#define SAY_SPELL1 -1564022 -#define SAY_SPELL2 -1564023 -#define SAY_SPELL3 -1564024 -#define SAY_SLAY1 -1564025 -#define SAY_SLAY2 -1564026 -#define SAY_ENRAGE -1564027 -#define SAY_DEATH -1564028 - -//Spells -#define SPELL_BEAM_SINISTER 40859 -#define SPELL_BEAM_VILE 40860 -#define SPELL_BEAM_WICKED 40861 -#define SPELL_BEAM_SINFUL 40827 -#define SPELL_ATTRACTION 40871 -#define SPELL_SILENCING_SHRIEK 40823 -#define SPELL_ENRAGE 23537 -#define SPELL_SABER_LASH 40810//43267 -#define SPELL_SABER_LASH_IMM 43690 -#define SPELL_TELEPORT_VISUAL 40869 -#define SPELL_BERSERK 45078 +enum MotherShahraz +{ + //Speech'n'Sounds + SAY_TAUNT = 0, + SAY_AGGRO = 1, + SAY_SPELL = 2, + SAY_SLAY = 3, + SAY_ENRAGE = 4, + SAY_DEATH = 5, + + //Spells + SPELL_BEAM_SINISTER = 40859, + SPELL_BEAM_VILE = 40860, + SPELL_BEAM_WICKED = 40861, + SPELL_BEAM_SINFUL = 40827, + SPELL_ATTRACTION = 40871, + SPELL_SILENCING_SHRIEK = 40823, + SPELL_ENRAGE = 23537, + SPELL_SABER_LASH = 40810,//43267 + SPELL_SABER_LASH_IMM = 43690, + SPELL_TELEPORT_VISUAL = 40869, + SPELL_BERSERK = 45078 +}; uint32 PrismaticAuras[]= { @@ -142,12 +140,12 @@ public: instance->SetData(DATA_MOTHERSHAHRAZEVENT, IN_PROGRESS); DoZoneInCombat(); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) @@ -155,7 +153,7 @@ public: if (instance) instance->SetData(DATA_MOTHERSHAHRAZEVENT, DONE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void TeleportPlayers() @@ -185,7 +183,7 @@ public: { Enraged = true; DoCast(me, SPELL_ENRAGE, true); - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); } //Randomly cast one beam. @@ -236,7 +234,7 @@ public: TeleportPlayers(); - DoScriptText(RAND(SAY_SPELL2, SAY_SPELL3), me); + Talk(SAY_SPELL); FatalAttractionExplodeTimer = 2000; FatalAttractionTimer = urand(40, 71) * 1000; } else FatalAttractionTimer -= diff; @@ -284,14 +282,14 @@ public: if (EnrageTimer <= diff) { DoCast(me, SPELL_BERSERK); - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); } else EnrageTimer -= diff; } //Random taunts if (RandomYellTimer <= diff) { - DoScriptText(RAND(SAY_TAUNT1, SAY_TAUNT2, SAY_TAUNT3), me); + Talk(SAY_TAUNT); RandomYellTimer = urand(60, 151) * 1000; } else RandomYellTimer -= diff; diff --git a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp index 5ab9dcab667..00ea405e109 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_reliquary_of_souls.cpp @@ -28,64 +28,61 @@ EndScriptData */ #include "black_temple.h" #include "Spell.h" -//Sound'n'speech -//Suffering -#define SUFF_SAY_FREED -1564047 -#define SUFF_SAY_AGGRO -1564048 -#define SUFF_SAY_SLAY1 -1564049 -#define SUFF_SAY_SLAY2 -1564050 -#define SUFF_SAY_SLAY3 -1564051 -#define SUFF_SAY_RECAP -1564052 -#define SUFF_SAY_AFTER -1564053 -#define SUFF_EMOTE_ENRAGE -1564054 - -//Desire -#define DESI_SAY_FREED -1564055 -#define DESI_SAY_SLAY1 -1564056 -#define DESI_SAY_SLAY2 -1564057 -#define DESI_SAY_SLAY3 -1564058 -#define DESI_SAY_SPEC -1564059 -#define DESI_SAY_RECAP -1564060 -#define DESI_SAY_AFTER -1564061 - -//Anger -#define ANGER_SAY_FREED -1564062 -#define ANGER_SAY_FREED2 -1564063 -#define ANGER_SAY_SLAY1 -1564064 -#define ANGER_SAY_SLAY2 -1564065 -#define ANGER_SAY_SPEC -1564066 -#define ANGER_SAY_BEFORE -1564067 -#define ANGER_SAY_DEATH -1564068 - -//Spells -#define AURA_OF_SUFFERING 41292 -#define AURA_OF_SUFFERING_ARMOR 42017 // linked aura, need core support -#define ESSENCE_OF_SUFFERING_PASSIVE 41296 // periodic trigger 41294 -#define ESSENCE_OF_SUFFERING_PASSIVE2 41623 -#define SPELL_FIXATE_TARGET 41294 // dummy, select target -#define SPELL_FIXATE_TAUNT 41295 // force taunt -#define SPELL_ENRAGE 41305 -#define SPELL_SOUL_DRAIN 41303 - -#define AURA_OF_DESIRE 41350 -#define AURA_OF_DESIRE_DAMAGE 41352 -#define SPELL_RUNE_SHIELD 41431 -#define SPELL_DEADEN 41410 -#define SPELL_SOUL_SHOCK 41426 - -#define AURA_OF_ANGER 41337 -#define SPELL_SELF_SEETHE 41364 // force cast 41520 -#define SPELL_ENEMY_SEETHE 41520 -#define SPELL_SOUL_SCREAM 41545 -#define SPELL_SPITE_TARGET 41376 // cast 41377 after 6 sec -#define SPELL_SPITE_DAMAGE 41377 - -#define ENSLAVED_SOUL_PASSIVE 41535 -#define SPELL_SOUL_RELEASE 41542 -#define SPELL_SUBMERGE 37550 //dropout 'head' - -#define CREATURE_ENSLAVED_SOUL 23469 -#define NUMBER_ENSLAVED_SOUL 8 +enum ReliquaryOfSouls +{ + //Sound'n'speech + //Suffering + SUFF_SAY_FREED = 0, + SUFF_SAY_AGGRO = 1, + SUFF_SAY_SLAY = 2, + SUFF_SAY_RECAP = 3, + SUFF_SAY_AFTER = 4, + SUFF_EMOTE_ENRAGE = 5, + + //Desire + DESI_SAY_FREED = 0, + DESI_SAY_SLAY = 1, + DESI_SAY_SPEC = 2, + DESI_SAY_RECAP = 3, + DESI_SAY_AFTER = 4, + + //Anger + ANGER_SAY_FREED = 0, + ANGER_SAY_SLAY = 1, + ANGER_SAY_SPEC = 2, + ANGER_SAY_BEFORE = 3, + ANGER_SAY_DEATH = 4, + + //Spells + AURA_OF_SUFFERING = 41292, + AURA_OF_SUFFERING_ARMOR = 42017, // linked aura, need core support + ESSENCE_OF_SUFFERING_PASSIVE = 41296, // periodic trigger 41294 + ESSENCE_OF_SUFFERING_PASSIVE2 = 41623, + SPELL_FIXATE_TARGET = 41294, // dummy, select target + SPELL_FIXATE_TAUNT = 41295, // force taunt + SPELL_ENRAGE = 41305, + SPELL_SOUL_DRAIN = 41303, + + AURA_OF_DESIRE = 41350, + AURA_OF_DESIRE_DAMAGE = 41352, + SPELL_RUNE_SHIELD = 41431, + SPELL_DEADEN = 41410, + SPELL_SOUL_SHOCK = 41426, + + AURA_OF_ANGER = 41337, + SPELL_SELF_SEETHE = 41364, // force cast 41520 + SPELL_ENEMY_SEETHE = 41520, + SPELL_SOUL_SCREAM = 41545, + SPELL_SPITE_TARGET = 41376, // cast 41377 after 6 sec + SPELL_SPITE_DAMAGE = 41377, + + ENSLAVED_SOUL_PASSIVE = 41535, + SPELL_SOUL_RELEASE = 41542, + SPELL_SUBMERGE = 37550, //dropout 'head' + + CREATURE_ENSLAVED_SOUL = 23469, + NUMBER_ENSLAVED_SOUL = 8 +}; struct Position2d { @@ -337,11 +334,11 @@ public: case 5: if (Phase == 1) { - DoScriptText(SUFF_SAY_AFTER, Essence); + Essence->AI()->Talk(SUFF_SAY_AFTER); } else { - DoScriptText(DESI_SAY_AFTER, Essence); + Essence->AI()->Talk(DESI_SAY_AFTER); } Essence->DespawnOrUnsummon(); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, 0); @@ -425,7 +422,7 @@ public: damage = 0; me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->Yell(SUFF_SAY_RECAP, LANG_UNIVERSAL, 0); - DoScriptText(SUFF_SAY_RECAP, me); + Talk(SUFF_SAY_RECAP); me->SetReactState(REACT_PASSIVE); } } @@ -434,7 +431,7 @@ public: { if (!me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE)) { - DoScriptText(SUFF_SAY_FREED, me); + Talk(SUFF_SAY_FREED); DoZoneInCombat(); DoCast(me, AURA_OF_SUFFERING, true); // linked aura need core support DoCast(me, ESSENCE_OF_SUFFERING_PASSIVE, true); @@ -445,7 +442,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SUFF_SAY_SLAY1, SUFF_SAY_SLAY2, SUFF_SAY_SLAY3), me); + Talk(SUFF_SAY_SLAY); } void CastFixate() @@ -483,7 +480,7 @@ public: FixateTimer = 5000; if (!(rand()%16)) { - DoScriptText(SUFF_SAY_AGGRO, me); + Talk(SUFF_SAY_AGGRO); } } else FixateTimer -= diff; } @@ -496,7 +493,7 @@ public: { DoCast(me, SPELL_ENRAGE); EnrageTimer = 60000; - DoScriptText(SUFF_EMOTE_ENRAGE, me); + Talk(SUFF_EMOTE_ENRAGE); } else EnrageTimer -= diff; if (SoulDrainTimer <= diff) @@ -545,7 +542,7 @@ public: { damage = 0; me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - DoScriptText(SUFF_SAY_RECAP, me); + Talk(SUFF_SAY_RECAP); me->SetReactState(REACT_PASSIVE); } else @@ -567,14 +564,14 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(DESI_SAY_FREED, me); + Talk(DESI_SAY_FREED); DoZoneInCombat(); DoCast(me, AURA_OF_DESIRE, true); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(DESI_SAY_SLAY1, DESI_SAY_SLAY2, DESI_SAY_SLAY3), me); + Talk(DESI_SAY_SLAY); } void UpdateAI(const uint32 diff) @@ -604,7 +601,7 @@ public: DeadenTimer = urand(25000, 35000); if (!(rand()%2)) { - DoScriptText(DESI_SAY_SPEC, me); + Talk(DESI_SAY_SPEC); } } else DeadenTimer -= diff; @@ -652,7 +649,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(ANGER_SAY_FREED, ANGER_SAY_FREED2), me); + Talk(ANGER_SAY_FREED); DoZoneInCombat(); DoCast(me, AURA_OF_ANGER, true); @@ -660,12 +657,12 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(ANGER_SAY_DEATH, me); + Talk(ANGER_SAY_DEATH); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(ANGER_SAY_SLAY1, ANGER_SAY_SLAY2), me); + Talk(ANGER_SAY_SLAY); } void UpdateAI(const uint32 diff) @@ -684,7 +681,7 @@ public: { if (me->getVictim()->GetGUID() != AggroTargetGUID) { - DoScriptText(ANGER_SAY_BEFORE, me); + Talk(ANGER_SAY_BEFORE); DoCast(me, SPELL_SELF_SEETHE, true); AggroTargetGUID = me->getVictim()->GetGUID(); } @@ -697,7 +694,7 @@ public: SoulScreamTimer = urand(9000, 11000); if (!(rand()%3)) { - DoScriptText(ANGER_SAY_SPEC, me); + Talk(ANGER_SAY_SPEC); } } else SoulScreamTimer -= diff; @@ -705,7 +702,7 @@ public: { DoCast(me, SPELL_SPITE_TARGET); SpiteTimer = 30000; - DoScriptText(ANGER_SAY_SPEC, me); + Talk(ANGER_SAY_SPEC); } else SpiteTimer -= diff; DoMeleeAttackIfReady(); diff --git a/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp b/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp index 6e770249cf0..0180281cde3 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_shade_of_akama.cpp @@ -29,12 +29,15 @@ EndScriptData */ #include "black_temple.h" #include "Player.h" -#define SAY_DEATH -1564013 -#define SAY_LOW_HEALTH -1564014 -// Ending cinematic text -#define SAY_FREE -1564015 -#define SAY_BROKEN_FREE_01 -1564016 -#define SAY_BROKEN_FREE_02 -1564017 +enum ShadeOfAkama +{ + SAY_DEATH = 0, + SAY_LOW_HEALTH = 1, + // Ending cinematic text + SAY_FREE = 2, + SAY_BROKEN_FREE_01 = 0, + SAY_BROKEN_FREE_02 = 1 +}; #define GOSSIP_ITEM "We are ready to fight alongside you, Akama" @@ -704,7 +707,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); EventBegun = false; ShadeHasDied = false; StartCombat = false; @@ -729,7 +732,7 @@ public: if (HealthBelowPct(15) && !HasYelledOnce) { - DoScriptText(SAY_LOW_HEALTH, me); + Talk(SAY_LOW_HEALTH); HasYelledOnce = true; } @@ -825,7 +828,7 @@ public: SummonBrokenTimer = 1; break; case 1: - DoScriptText(SAY_FREE, me); + Talk(SAY_FREE); ++EndingTalkCount; SoulRetrieveTimer = 25000; break; @@ -838,7 +841,7 @@ public: { if (!Yelled) { - DoScriptText(SAY_BROKEN_FREE_01, unit); + unit->AI()->Talk(SAY_BROKEN_FREE_01); Yelled = true; } unit->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL); @@ -863,7 +866,7 @@ public: { for (std::list<uint64>::const_iterator itr = BrokenList.begin(); itr != BrokenList.end(); ++itr) if (Creature* unit = Unit::GetCreature((*me), *itr)) - unit->MonsterYell(SAY_BROKEN_FREE_02, LANG_UNIVERSAL, 0); + unit->AI()->Talk(SAY_BROKEN_FREE_02); } SoulRetrieveTimer = 0; break; diff --git a/src/server/scripts/Outland/BlackTemple/boss_supremus.cpp b/src/server/scripts/Outland/BlackTemple/boss_supremus.cpp index 77d1c86951b..388052f0a5e 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_supremus.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_supremus.cpp @@ -28,32 +28,35 @@ EndScriptData */ #include "PassiveAI.h" #include "black_temple.h" -#define EMOTE_NEW_TARGET -1564010 -#define EMOTE_PUNCH_GROUND -1564011 //DoScriptText(EMOTE_PUNCH_GROUND, me); -#define EMOTE_GROUND_CRACK -1564012 - -//Spells -#define SPELL_MOLTEN_PUNCH 40126 -#define SPELL_HATEFUL_STRIKE 41926 -#define SPELL_MOLTEN_FLAME 40980 -#define SPELL_VOLCANIC_ERUPTION 40117 -#define SPELL_VOLCANIC_SUMMON 40276 -#define SPELL_BERSERK 45078 - -#define CREATURE_VOLCANO 23085 -#define CREATURE_STALKER 23095 - -#define PHASE_STRIKE 1 -#define PHASE_CHASE 2 - -#define EVENT_BERSERK 1 -#define EVENT_SWITCH_PHASE 2 -#define EVENT_FLAME 3 -#define EVENT_VOLCANO 4 -#define EVENT_SWITCH_TARGET 5 -#define EVENT_HATEFUL_STRIKE 6 - -#define GCD_CAST 1 +enum Supremus +{ + EMOTE_NEW_TARGET = 0, + EMOTE_PUNCH_GROUND = 1, //Talk(EMOTE_PUNCH_GROUND); + EMOTE_GROUND_CRACK = 2, + + //Spells + SPELL_MOLTEN_PUNCH = 40126, + SPELL_HATEFUL_STRIKE = 41926, + SPELL_MOLTEN_FLAME = 40980, + SPELL_VOLCANIC_ERUPTION = 40117, + SPELL_VOLCANIC_SUMMON = 40276, + SPELL_BERSERK = 45078, + + CREATURE_VOLCANO = 23085, + CREATURE_STALKER = 23095, + + PHASE_STRIKE = 1, + PHASE_CHASE = 2, + + EVENT_BERSERK = 1, + EVENT_SWITCH_PHASE = 2, + EVENT_FLAME = 3, + EVENT_VOLCANO = 4, + EVENT_SWITCH_TARGET = 5, + EVENT_HATEFUL_STRIKE = 6, + + GCD_CAST = 1 +}; class molten_flame : public CreatureScript { @@ -230,7 +233,7 @@ public: { DoResetThreat(); me->AddThreat(target, 5000000.0f); - DoScriptText(EMOTE_NEW_TARGET, me); + Talk(EMOTE_NEW_TARGET); } events.ScheduleEvent(EVENT_SWITCH_TARGET, 10000, 0, PHASE_CHASE); break; @@ -242,7 +245,7 @@ public: { //DoCast(target, SPELL_VOLCANIC_SUMMON);//movement bugged me->SummonCreature(CREATURE_VOLCANO, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 30000); - DoScriptText(EMOTE_GROUND_CRACK, me); + Talk(EMOTE_GROUND_CRACK); events.DelayEvents(1500, GCD_CAST); } events.ScheduleEvent(EVENT_VOLCANO, 10000, GCD_CAST, PHASE_CHASE); diff --git a/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp b/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp index 9a200d07d2b..ce17ac48cf5 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp @@ -27,30 +27,29 @@ EndScriptData */ #include "ScriptedCreature.h" #include "black_temple.h" - //Speech'n'sound -#define SAY_INTRO -1564037 -#define SAY_AGGRO -1564038 -#define SAY_SLAY1 -1564039 -#define SAY_SLAY2 -1564040 -#define SAY_SPELL1 -1564041 -#define SAY_SPELL2 -1564042 -#define SAY_SPECIAL1 -1564043 -#define SAY_SPECIAL2 -1564044 -#define SAY_ENRAGE -1564045 -#define SAY_DEATH -1564046 - -//Spells -#define SPELL_INCINERATE 40239 -#define SPELL_CRUSHING_SHADOWS 40243 -#define SPELL_SHADOWBOLT 40185 -#define SPELL_PASSIVE_SHADOWFORM 40326 -#define SPELL_SHADOW_OF_DEATH 40251 -#define SPELL_BERSERK 45078 - -#define SPELL_ATROPHY 40327 // Shadowy Constructs use this when they get within melee range of a player - -#define CREATURE_DOOM_BLOSSOM 23123 -#define CREATURE_SHADOWY_CONSTRUCT 23111 +enum DoomBlossom +{ + //Speech'n'sound + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_SPELL = 3, + SAY_SPECIAL = 4, + SAY_ENRAGE = 5, + SAY_DEATH = 6, + + //Spells + SPELL_INCINERATE = 40239, + SPELL_CRUSHING_SHADOWS = 40243, + SPELL_SHADOWBOLT = 40185, + SPELL_PASSIVE_SHADOWFORM = 40326, + SPELL_SHADOW_OF_DEATH = 40251, + SPELL_BERSERK = 45078, + SPELL_ATROPHY = 40327, // Shadowy Constructs use this when they get within melee range of a player + + CREATURE_DOOM_BLOSSOM = 23123, + CREATURE_SHADOWY_CONSTRUCT = 23111 +}; class mob_doom_blossom : public CreatureScript { @@ -278,7 +277,7 @@ public: me->GetMotionMaster()->Clear(false); me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_TALK); AggroTargetGUID = who->GetGUID(); Intro = true; @@ -290,7 +289,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) @@ -298,7 +297,7 @@ public: if (instance) instance->SetData(DATA_TERONGOREFIENDEVENT, DONE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } float CalculateRandomLocation(float Loc, uint32 radius) @@ -387,7 +386,7 @@ public: { me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE); Done = true; if (AggroTargetGUID) @@ -461,7 +460,7 @@ public: if (target) { - DoScriptText(RAND(SAY_SPECIAL1, SAY_SPECIAL2), me); + Talk(SAY_SPECIAL); DoCast(target, SPELL_INCINERATE); IncinerateTimer = urand(20, 51) * 1000; } @@ -494,7 +493,7 @@ public: if (RandomYellTimer <= diff) { - DoScriptText(RAND(SAY_SPELL1, SAY_SPELL2), me); + Talk(SAY_SPELL); RandomYellTimer = urand(50, 101) * 1000; } else RandomYellTimer -= diff; @@ -503,7 +502,7 @@ public: if (EnrageTimer <= diff) { DoCast(me, SPELL_BERSERK); - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); } else EnrageTimer -= diff; } diff --git a/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp b/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp index 9924bf1ffab..f56d55c36e3 100644 --- a/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp +++ b/src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp @@ -31,16 +31,12 @@ EndScriptData */ enum eEnums { - SAY_AGGRO = -1564000, - SAY_NEEDLE1 = -1564001, - SAY_NEEDLE2 = -1564002, - SAY_SLAY1 = -1564003, - SAY_SLAY2 = -1564004, - SAY_SPECIAL1 = -1564005, - SAY_SPECIAL2 = -1564006, - SAY_ENRAGE1 = -1564007, //is this text actually in use? - SAY_ENRAGE2 = -1564008, - SAY_DEATH = -1564009, + SAY_AGGRO = 0, + SAY_NEEDLE = 1, + SAY_SLAY = 2, + SAY_SPECIAL = 3, + SAY_ENRAGE = 4, + SAY_DEATH = 5, //Spells SPELL_NEEDLE_SPINE = 39992, @@ -97,7 +93,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(urand(0, 1) ? SAY_SLAY1 : SAY_SLAY2, me); + Talk(SAY_SLAY); events.DelayEvents(5000, GCD_YELL); } @@ -106,7 +102,7 @@ public: if (instance) instance->SetData(DATA_HIGHWARLORDNAJENTUSEVENT, DONE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void SpellHit(Unit* /*caster*/, const SpellInfo* spell) @@ -124,7 +120,7 @@ public: if (instance) instance->SetData(DATA_HIGHWARLORDNAJENTUSEVENT, IN_PROGRESS); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoZoneInCombat(); events.ScheduleEvent(EVENT_BERSERK, 480000, GCD_CAST); events.ScheduleEvent(EVENT_YELL, 45000 + (rand()%76)*1000, GCD_YELL); @@ -166,7 +162,7 @@ public: ResetTimer(45000); break; case EVENT_BERSERK: - DoScriptText(SAY_ENRAGE2, me); + Talk(SAY_ENRAGE); DoCast(me, SPELL_BERSERK, true); events.DelayEvents(15000, GCD_YELL); break; @@ -180,7 +176,7 @@ public: SpineTargetGUID = target->GetGUID(); //must let target summon, otherwise you cannot click the spine target->SummonGameObject(GOBJECT_SPINE, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), me->GetOrientation(), 0, 0, 0, 0, 30); - DoScriptText(urand(0, 1) ? SAY_NEEDLE1 : SAY_NEEDLE2, me); + Talk(SAY_NEEDLE); events.DelayEvents(1500, GCD_CAST); events.DelayEvents(15000, GCD_YELL); } @@ -199,7 +195,7 @@ public: return; } case EVENT_YELL: - DoScriptText(RAND(SAY_SPECIAL1, SAY_SPECIAL2), me); + Talk(SAY_SPECIAL); events.ScheduleEvent(EVENT_YELL, urand(25000, 100000), GCD_YELL); events.DelayEvents(15000, GCD_YELL); break; diff --git a/src/server/scripts/Outland/BlackTemple/illidari_council.cpp b/src/server/scripts/Outland/BlackTemple/illidari_council.cpp index 673d4bcc96f..5a9b6e5a94e 100644 --- a/src/server/scripts/Outland/BlackTemple/illidari_council.cpp +++ b/src/server/scripts/Outland/BlackTemple/illidari_council.cpp @@ -29,35 +29,69 @@ EndScriptData */ #include "SpellAuraEffects.h" #include "black_temple.h" -//Speech'n'Sounds -#define SAY_GATH_SLAY -1564085 -#define SAY_GATH_SLAY_COMNT -1564089 -#define SAY_GATH_DEATH -1564093 -#define SAY_GATH_SPECIAL1 -1564077 -#define SAY_GATH_SPECIAL2 -1564081 - -#define SAY_VERA_SLAY -1564086 -#define SAY_VERA_COMNT -1564089 //signed for 22949 -#define SAY_VERA_DEATH -1564094 -#define SAY_VERA_SPECIAL1 -1564078 -#define SAY_VERA_SPECIAL2 -1564082 - -#define SAY_MALA_SLAY -1564087 -#define SAY_MALA_COMNT -1564090 -#define SAY_MALA_DEATH -1564095 -#define SAY_MALA_SPECIAL1 -1564079 -#define SAY_MALA_SPECIAL2 -1564083 - -#define SAY_ZERE_SLAY -1564088 -#define SAY_ZERE_COMNT -1564091 -#define SAY_ZERE_DEATH -1564096 -#define SAY_ZERE_SPECIAL1 -1564080 -#define SAY_ZERE_SPECIAL2 -1564084 +enum IllidariCouncil +{ + //Speech'n'Sounds + SAY_GATH_SPECIAL1 = 2, + SAY_GATH_SPECIAL2 = 3, + SAY_GATH_SLAY = 4, + SAY_GATH_COMNT = 5, + SAY_GATH_DEATH = 6, + + SAY_MALA_SPECIAL1 = 2, + SAY_MALA_SPECIAL2 = 3, + SAY_MALA_SLAY = 4, + SAY_MALA_COMNT = 5, + SAY_MALA_DEATH = 6, + + SAY_ZERE_SPECIAL1 = 2, + SAY_ZERE_SPECIAL2 = 3, + SAY_ZERE_SLAY = 4, + SAY_ZERE_COMNT = 5, + SAY_ZERE_DEATH = 6, + + SAY_VERA_SPECIAL1 = 2, + SAY_VERA_SPECIAL2 = 3, + SAY_VERA_SLAY = 4, + SAY_VERA_COMNT = 5, + SAY_VERA_DEATH = 6, + + AKAMAID = 23089, + + // High Nethermancer Zerevor's spells + SPELL_FLAMESTRIKE = 41481, + SPELL_BLIZZARD = 41482, + SPELL_ARCANE_BOLT = 41483, + SPELL_ARCANE_EXPLOSION = 41524, + SPELL_DAMPEN_MAGIC = 41478, + + // Lady Malande's spells + SPELL_EMPOWERED_SMITE = 41471, + SPELL_CIRCLE_OF_HEALING = 41455, + SPELL_REFLECTIVE_SHIELD = 41475, + SPELL_REFLECTIVE_SHIELD_T = 33619, + SPELL_DIVINE_WRATH = 41472, + SPELL_HEAL_VISUAL = 24171, + + // Gathios the Shatterer's spells + SPELL_BLESS_PROTECTION = 41450, + SPELL_BLESS_SPELLWARD = 41451, + SPELL_CONSECRATION = 41541, + SPELL_HAMMER_OF_JUSTICE = 41468, + SPELL_SEAL_OF_COMMAND = 41469, + SPELL_SEAL_OF_BLOOD = 41459, + SPELL_CHROMATIC_AURA = 41453, + SPELL_DEVOTION_AURA = 41452, + + // Veras Darkshadow's spells + SPELL_DEADLY_POISON = 41485, + SPELL_ENVENOM = 41487, + SPELL_VANISH = 41479, + SPELL_BERSERK = 45078 +}; #define ERROR_INST_DATA "SD2 ERROR: Instance Data for Black Temple not set properly; Illidari Council event will not function properly." -#define AKAMAID 23089 - struct CouncilYells { int32 entry; @@ -66,53 +100,21 @@ struct CouncilYells static CouncilYells CouncilAggro[]= { - {-1564069, 5000}, // Gathios - {-1564070, 5500}, // Veras - {-1564071, 5000}, // Malande - {-1564072, 0}, // Zerevor + {0, 5000}, // Gathios + {0, 5500}, // Veras + {0, 5000}, // Malande + {0, 0}, // Zerevor }; // Need to get proper timers for this later static CouncilYells CouncilEnrage[]= { - {-1564073, 2000}, // Gathios - {-1564074, 6000}, // Veras - {-1564075, 5000}, // Malande - {-1564076, 0}, // Zerevor + {1, 2000}, // Gathios + {1, 6000}, // Veras + {1, 5000}, // Malande + {1, 0}, // Zerevor }; -// High Nethermancer Zerevor's spells -#define SPELL_FLAMESTRIKE 41481 -#define SPELL_BLIZZARD 41482 -#define SPELL_ARCANE_BOLT 41483 -#define SPELL_ARCANE_EXPLOSION 41524 -#define SPELL_DAMPEN_MAGIC 41478 - -// Lady Malande's spells -#define SPELL_EMPOWERED_SMITE 41471 -#define SPELL_CIRCLE_OF_HEALING 41455 -#define SPELL_REFLECTIVE_SHIELD 41475 -#define SPELL_REFLECTIVE_SHIELD_T 33619 -#define SPELL_DIVINE_WRATH 41472 -#define SPELL_HEAL_VISUAL 24171 - -// Gathios the Shatterer's spells -#define SPELL_BLESS_PROTECTION 41450 -#define SPELL_BLESS_SPELLWARD 41451 -#define SPELL_CONSECRATION 41541 -#define SPELL_HAMMER_OF_JUSTICE 41468 -#define SPELL_SEAL_OF_COMMAND 41469 -#define SPELL_SEAL_OF_BLOOD 41459 -#define SPELL_CHROMATIC_AURA 41453 -#define SPELL_DEVOTION_AURA 41452 - -// Veras Darkshadow's spells -#define SPELL_DEADLY_POISON 41485 -#define SPELL_ENVENOM 41487 -#define SPELL_VANISH 41479 - -#define SPELL_BERSERK 45078 - class mob_blood_elf_council_voice_trigger : public CreatureScript { public: @@ -179,9 +181,9 @@ public: { if (AggroYellTimer <= diff) { - if (Unit* pMember = Unit::GetUnit(*me, Council[YellCounter])) + if (Creature* pMember = Creature::GetCreature(*me, Council[YellCounter])) { - DoScriptText(CouncilAggro[YellCounter].entry, pMember); + pMember->AI()->Talk(CouncilAggro[YellCounter].entry); AggroYellTimer = CouncilAggro[YellCounter].timer; } ++YellCounter; @@ -194,10 +196,10 @@ public: { if (EnrageTimer <= diff) { - if (Unit* pMember = Unit::GetUnit(*me, Council[YellCounter])) + if (Creature* pMember = Creature::GetCreature(*me, Council[YellCounter])) { pMember->CastSpell(pMember, SPELL_BERSERK, true); - DoScriptText(CouncilEnrage[YellCounter].entry, pMember); + pMember->AI()->Talk(CouncilEnrage[YellCounter].entry); EnrageTimer = CouncilEnrage[YellCounter].timer; } ++YellCounter; @@ -497,12 +499,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(SAY_GATH_SLAY, me); + Talk(SAY_GATH_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_GATH_DEATH, me); + Talk(SAY_GATH_DEATH); } Unit* SelectCouncilMember() @@ -631,12 +633,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(SAY_ZERE_SLAY, me); + Talk(SAY_ZERE_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_ZERE_DEATH, me); + Talk(SAY_ZERE_DEATH); } void UpdateAI(const uint32 diff) @@ -731,12 +733,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(SAY_MALA_SLAY, me); + Talk(SAY_MALA_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_MALA_DEATH, me); + Talk(SAY_MALA_DEATH); } void UpdateAI(const uint32 diff) @@ -817,12 +819,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(SAY_VERA_SLAY, me); + Talk(SAY_VERA_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_VERA_DEATH, me); + Talk(SAY_VERA_DEATH); } void UpdateAI(const uint32 diff) diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp index a5737714e71..5a26ffd9acd 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_fathomlord_karathress.cpp @@ -28,64 +28,62 @@ EndScriptData */ #include "serpent_shrine.h" #include "ScriptedEscortAI.h" -#define SAY_AGGRO -1548021 -#define SAY_GAIN_BLESSING -1548022 -#define SAY_GAIN_ABILITY1 -1548023 -#define SAY_GAIN_ABILITY2 -1548024 -#define SAY_GAIN_ABILITY3 -1548025 -#define SAY_SLAY1 -1548026 -#define SAY_SLAY2 -1548027 -#define SAY_SLAY3 -1548028 -#define SAY_DEATH -1548029 - -//Karathress spells -#define SPELL_CATACLYSMIC_BOLT 38441 -#define SPELL_POWER_OF_SHARKKIS 38455 -#define SPELL_POWER_OF_TIDALVESS 38452 -#define SPELL_POWER_OF_CARIBDIS 38451 -#define SPELL_ENRAGE 24318 -#define SPELL_SEAR_NOVA 38445 -#define SPELL_BLESSING_OF_THE_TIDES 38449 - -//Sharkkis spells -#define SPELL_LEECHING_THROW 29436 -#define SPELL_THE_BEAST_WITHIN 38373 -#define SPELL_MULTISHOT 38366 -#define SPELL_SUMMON_FATHOM_LURKER 38433 -#define SPELL_SUMMON_FATHOM_SPOREBAT 38431 -#define SPELL_PET_ENRAGE 19574 - -//Tidalvess spells -#define SPELL_FROST_SHOCK 38234 -#define SPELL_SPITFIRE_TOTEM 38236 -#define SPELL_POISON_CLEANSING_TOTEM 38306 -// Spell obsolete -// #define SPELL_POISON_CLEANSING_EFFECT 8167 -#define SPELL_EARTHBIND_TOTEM 38304 -#define SPELL_EARTHBIND_TOTEM_EFFECT 6474 -#define SPELL_WINDFURY_WEAPON 38184 - -//Caribdis Spells -#define SPELL_WATER_BOLT_VOLLEY 38335 -#define SPELL_TIDAL_SURGE 38358 -#define SPELL_TIDAL_SURGE_FREEZE 38357 -#define SPELL_HEAL 38330 -#define SPELL_SUMMON_CYCLONE 38337 -#define SPELL_CYCLONE_CYCLONE 29538 - -//Yells and Quotes -#define SAY_GAIN_BLESSING_OF_TIDES "Your overconfidence will be your undoing! Guards, lend me your strength!" -#define SOUND_GAIN_BLESSING_OF_TIDES 11278 -#define SAY_MISC "Alana be'lendor!" //don't know what use this -#define SOUND_MISC 11283 - -//Summoned Unit GUIDs -#define CREATURE_CYCLONE 22104 -#define CREATURE_FATHOM_SPOREBAT 22120 -#define CREATURE_FATHOM_LURKER 22119 -#define CREATURE_SPITFIRE_TOTEM 22091 -#define CREATURE_EARTHBIND_TOTEM 22486 -#define CREATURE_POISON_CLEANSING_TOTEM 22487 +enum FathomlordKarathress +{ + SAY_AGGRO = 0, + SAY_GAIN_BLESSING = 1, + SAY_GAIN_ABILITY1 = 2, + SAY_GAIN_ABILITY2 = 3, + SAY_GAIN_ABILITY3 = 4, + SAY_SLAY = 5, + SAY_DEATH = 6, + + //Karathress spells + SPELL_CATACLYSMIC_BOLT = 38441, + SPELL_POWER_OF_SHARKKIS = 38455, + SPELL_POWER_OF_TIDALVESS = 38452, + SPELL_POWER_OF_CARIBDIS = 38451, + SPELL_ENRAGE = 24318, + SPELL_SEAR_NOVA = 38445, + SPELL_BLESSING_OF_THE_TIDES = 38449, + + //Sharkkis spells + SPELL_LEECHING_THROW = 29436, + SPELL_THE_BEAST_WITHIN = 38373, + SPELL_MULTISHOT = 38366, + SPELL_SUMMON_FATHOM_LURKER = 38433, + SPELL_SUMMON_FATHOM_SPOREBAT = 38431, + SPELL_PET_ENRAGE = 19574, + + //Tidalvess spells + SPELL_FROST_SHOCK = 38234, + SPELL_SPITFIRE_TOTEM = 38236, + SPELL_POISON_CLEANSING_TOTEM = 38306, + // Spell obsolete + SPELL_EARTHBIND_TOTEM = 38304, + SPELL_EARTHBIND_TOTEM_EFFECT = 6474, + SPELL_WINDFURY_WEAPON = 38184, + + //Caribdis Spells + SPELL_WATER_BOLT_VOLLEY = 38335, + SPELL_TIDAL_SURGE = 38358, + SPELL_TIDAL_SURGE_FREEZE = 38357, + SPELL_HEAL = 38330, + SPELL_SUMMON_CYCLONE = 38337, + SPELL_CYCLONE_CYCLONE = 29538, + + //Yells and Quotes + SOUND_GAIN_BLESSING_OF_TIDES = 11278, + SOUND_MISC = 11283, + + //Summoned Unit GUIDs + CREATURE_CYCLONE = 22104, + CREATURE_FATHOM_SPOREBAT = 22120, + CREATURE_FATHOM_LURKER = 22119, + CREATURE_SPITFIRE_TOTEM = 22091, + CREATURE_EARTHBIND_TOTEM = 22486, + CREATURE_POISON_CLEANSING_TOTEM = 22487, +}; //entry and position for Seer Olum #define SEER_OLUM 22820 @@ -94,6 +92,9 @@ EndScriptData */ #define OLUM_Z -7.54773f #define OLUM_O 0.401581f +#define SAY_GAIN_BLESSING_OF_TIDES "Your overconfidence will be your undoing! Guards, lend me your strength!" +#define SAY_MISC "Alana be'lendor!" //don't know what use this + #define MAX_ADVISORS 3 //Fathom-Lord Karathress AI class boss_fathomlord_karathress : public CreatureScript @@ -160,19 +161,19 @@ public: void EventSharkkisDeath() { - DoScriptText(SAY_GAIN_ABILITY1, me); + Talk(SAY_GAIN_ABILITY1); DoCast(me, SPELL_POWER_OF_SHARKKIS); } void EventTidalvessDeath() { - DoScriptText(SAY_GAIN_ABILITY2, me); + Talk(SAY_GAIN_ABILITY2); DoCast(me, SPELL_POWER_OF_TIDALVESS); } void EventCaribdisDeath() { - DoScriptText(SAY_GAIN_ABILITY3, me); + Talk(SAY_GAIN_ABILITY3); DoCast(me, SPELL_POWER_OF_CARIBDIS); } @@ -193,7 +194,7 @@ public: GetAdvisors(); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoZoneInCombat(); instance->SetData64(DATA_KARATHRESSEVENT_STARTER, who->GetGUID()); @@ -202,12 +203,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_FATHOMLORDKARATHRESSEVENT, DONE); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_hydross_the_unstable.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_hydross_the_unstable.cpp index bad10752db3..c8589cc05d8 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_hydross_the_unstable.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_hydross_the_unstable.cpp @@ -27,43 +27,45 @@ EndScriptData */ #include "ScriptedCreature.h" #include "serpent_shrine.h" -#define SAY_AGGRO -1548000 -#define SAY_SWITCH_TO_CLEAN -1548001 -#define SAY_CLEAN_SLAY1 -1548002 -#define SAY_CLEAN_SLAY2 -1548003 -#define SAY_CLEAN_DEATH -1548004 -#define SAY_SWITCH_TO_CORRUPT -1548005 -#define SAY_CORRUPT_SLAY1 -1548006 -#define SAY_CORRUPT_SLAY2 -1548007 -#define SAY_CORRUPT_DEATH -1548008 - -#define SWITCH_RADIUS 18 - -#define MODEL_CORRUPT 20609 -#define MODEL_CLEAN 20162 - -#define SPELL_WATER_TOMB 38235 -#define SPELL_MARK_OF_HYDROSS1 38215 -#define SPELL_MARK_OF_HYDROSS2 38216 -#define SPELL_MARK_OF_HYDROSS3 38217 -#define SPELL_MARK_OF_HYDROSS4 38218 -#define SPELL_MARK_OF_HYDROSS5 38231 -#define SPELL_MARK_OF_HYDROSS6 40584 -#define SPELL_MARK_OF_CORRUPTION1 38219 -#define SPELL_MARK_OF_CORRUPTION2 38220 -#define SPELL_MARK_OF_CORRUPTION3 38221 -#define SPELL_MARK_OF_CORRUPTION4 38222 -#define SPELL_MARK_OF_CORRUPTION5 38230 -#define SPELL_MARK_OF_CORRUPTION6 40583 -#define SPELL_VILE_SLUDGE 38246 -#define SPELL_ENRAGE 27680 //this spell need verification -#define SPELL_SUMMON_WATER_ELEMENT 36459 //not in use yet(in use ever?) -#define SPELL_ELEMENTAL_SPAWNIN 25035 -#define SPELL_BLUE_BEAM 40227 //channeled Hydross Beam Helper (not in use yet) - -#define ENTRY_PURE_SPAWN 22035 -#define ENTRY_TAINTED_SPAWN 22036 -#define ENTRY_BEAM_DUMMY 21934 +enum HydrossTheUnstable +{ + SAY_AGGRO = 0, + SAY_SWITCH_TO_CLEAN = 1, + SAY_CLEAN_SLAY = 2, + SAY_CLEAN_DEATH = 3, + SAY_SWITCH_TO_CORRUPT = 4, + SAY_CORRUPT_SLAY = 5, + SAY_CORRUPT_DEATH = 6, + + SWITCH_RADIUS = 18, + + MODEL_CORRUPT = 20609, + MODEL_CLEAN = 20162, + + SPELL_WATER_TOMB = 38235, + SPELL_MARK_OF_HYDROSS1 = 38215, + SPELL_MARK_OF_HYDROSS2 = 38216, + SPELL_MARK_OF_HYDROSS3 = 38217, + SPELL_MARK_OF_HYDROSS4 = 38218, + SPELL_MARK_OF_HYDROSS5 = 38231, + SPELL_MARK_OF_HYDROSS6 = 40584, + SPELL_MARK_OF_CORRUPTION1 = 38219, + SPELL_MARK_OF_CORRUPTION2 = 38220, + SPELL_MARK_OF_CORRUPTION3 = 38221, + SPELL_MARK_OF_CORRUPTION4 = 38222, + SPELL_MARK_OF_CORRUPTION5 = 38230, + SPELL_MARK_OF_CORRUPTION6 = 40583, + SPELL_VILE_SLUDGE = 38246, + SPELL_ENRAGE = 27680, //this spell need verification + SPELL_SUMMON_WATER_ELEMENT = 36459, //not in use yet(in use ever?) + SPELL_ELEMENTAL_SPAWNIN = 25035, + SPELL_BLUE_BEAM = 40227, //channeled Hydross Beam Helper (not in use yet) + + ENTRY_PURE_SPAWN = 22035, + ENTRY_TAINTED_SPAWN = 22036, + ENTRY_BEAM_DUMMY = 21934 +}; + #define HYDROSS_X -239.439f #define HYDROSS_Y -363.481f @@ -169,7 +171,7 @@ public: } void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_HYDROSSTHEUNSTABLEEVENT, IN_PROGRESS); @@ -177,10 +179,7 @@ public: void KilledUnit(Unit* /*victim*/) { - if (CorruptedForm) - DoScriptText(RAND(SAY_CORRUPT_SLAY1, SAY_CORRUPT_SLAY2), me); - else - DoScriptText(RAND(SAY_CLEAN_SLAY1, SAY_CLEAN_SLAY2), me); + Talk(CorruptedForm ? SAY_CORRUPT_SLAY : SAY_CLEAN_SLAY); } void JustSummoned(Creature* summoned) @@ -206,10 +205,7 @@ public: void JustDied(Unit* /*killer*/) { - if (CorruptedForm) - DoScriptText(SAY_CORRUPT_DEATH, me); - else - DoScriptText(SAY_CLEAN_DEATH, me); + Talk(CorruptedForm ? SAY_CORRUPT_DEATH : SAY_CLEAN_DEATH); if (instance) instance->SetData(DATA_HYDROSSTHEUNSTABLEEVENT, DONE); @@ -293,7 +289,7 @@ public: CorruptedForm = false; MarkOfHydross_Count = 0; - DoScriptText(SAY_SWITCH_TO_CLEAN, me); + Talk(SAY_SWITCH_TO_CLEAN); DoResetThreat(); SummonBeams(); @@ -377,7 +373,7 @@ public: MarkOfCorruption_Count = 0; CorruptedForm = true; - DoScriptText(SAY_SWITCH_TO_CORRUPT, me); + Talk(SAY_SWITCH_TO_CORRUPT); DoResetThreat(); DeSummonBeams(); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp index a934d03349c..6c4c51b03fe 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_lady_vashj.cpp @@ -30,48 +30,47 @@ EndScriptData */ #include "Player.h" #include "WorldSession.h" -#define SAY_INTRO -1548042 -#define SAY_AGGRO1 -1548043 -#define SAY_AGGRO2 -1548044 -#define SAY_AGGRO3 -1548045 -#define SAY_AGGRO4 -1548046 -#define SAY_PHASE1 -1548047 -#define SAY_PHASE2 -1548048 -#define SAY_PHASE3 -1548049 -#define SAY_BOWSHOT1 -1548050 -#define SAY_BOWSHOT2 -1548051 -#define SAY_SLAY1 -1548052 -#define SAY_SLAY2 -1548053 -#define SAY_SLAY3 -1548054 -#define SAY_DEATH -1548055 - -#define SPELL_SURGE 38044 -#define SPELL_MULTI_SHOT 38310 -#define SPELL_SHOCK_BLAST 38509 -#define SPELL_ENTANGLE 38316 -#define SPELL_STATIC_CHARGE_TRIGGER 38280 -#define SPELL_FORKED_LIGHTNING 40088 -#define SPELL_SHOOT 40873 -#define SPELL_POISON_BOLT 40095 -#define SPELL_TOXIC_SPORES 38575 -#define SPELL_MAGIC_BARRIER 38112 - -#define MIDDLE_X 30.134f -#define MIDDLE_Y -923.65f -#define MIDDLE_Z 42.9f - -#define SPOREBAT_X 30.977156f +enum LadyVashj +{ + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_PHASE1 = 2, + SAY_PHASE2 = 3, + SAY_PHASE3 = 4, + SAY_BOWSHOT = 5, + SAY_SLAY = 6, + SAY_DEATH = 7, + + SPELL_SURGE = 38044, + SPELL_MULTI_SHOT = 38310, + SPELL_SHOCK_BLAST = 38509, + SPELL_ENTANGLE = 38316, + SPELL_STATIC_CHARGE_TRIGGER = 38280, + SPELL_FORKED_LIGHTNING = 40088, + SPELL_SHOOT = 40873, + SPELL_POISON_BOLT = 40095, + SPELL_TOXIC_SPORES = 38575, + SPELL_MAGIC_BARRIER = 38112, + + SHIED_GENERATOR_CHANNEL = 19870, + ENCHANTED_ELEMENTAL = 21958, + TAINTED_ELEMENTAL = 22009, + COILFANG_STRIDER = 22056, + COILFANG_ELITE = 22055, + TOXIC_SPOREBAT = 22140, + TOXIC_SPORES_TRIGGER = 22207 +}; + +#define MIDDLE_X 30.134f +#define MIDDLE_Y -923.65f +#define MIDDLE_Z 42.9f + +#define SPOREBAT_X 30.977156f #define SPOREBAT_Y -925.297761f #define SPOREBAT_Z 77.176567f #define SPOREBAT_O 5.223932f -#define SHIED_GENERATOR_CHANNEL 19870 -#define ENCHANTED_ELEMENTAL 21958 -#define TAINTED_ELEMENTAL 22009 -#define COILFANG_STRIDER 22056 -#define COILFANG_ELITE 22055 -#define TOXIC_SPOREBAT 22140 -#define TOXIC_SPORES_TRIGGER 22207 + #define TEXT_NOT_INITIALIZED "Instance script not initialized" #define TEXT_ALREADY_DEACTIVATED "Already deactivated" @@ -226,12 +225,12 @@ public: } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_LADYVASHJEVENT, DONE); @@ -239,7 +238,7 @@ public: void StartEvent() { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3, SAY_AGGRO4), me); + Talk(SAY_AGGRO); Phase = 1; @@ -269,7 +268,7 @@ public: if (!Intro) { Intro = true; - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); } if (!CanAttack) return; @@ -307,7 +306,7 @@ public: } if (rand()%3) { - DoScriptText(RAND(SAY_BOWSHOT1, SAY_BOWSHOT2), me); + Talk(SAY_BOWSHOT); } } @@ -397,7 +396,7 @@ public: if (Creature* creature = me->SummonCreature(SHIED_GENERATOR_CHANNEL, ShieldGeneratorChannelPos[i][0], ShieldGeneratorChannelPos[i][1], ShieldGeneratorChannelPos[i][2], ShieldGeneratorChannelPos[i][3], TEMPSUMMON_CORPSE_DESPAWN, 0)) ShieldGeneratorChannel[i] = creature->GetGUID(); - DoScriptText(SAY_PHASE2, me); + Talk(SAY_PHASE2); } } // Phase 3 @@ -527,7 +526,7 @@ public: me->RemoveAurasDueToSpell(SPELL_MAGIC_BARRIER); - DoScriptText(SAY_PHASE3, me); + Talk(SAY_PHASE3); Phase = 3; diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp index 1221e59b96e..6fe1e86551a 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_leotheras_the_blind.cpp @@ -28,47 +28,46 @@ EndScriptData */ #include "serpent_shrine.h" #include "Player.h" -// --- Spells used by Leotheras The Blind -#define SPELL_WHIRLWIND 37640 -#define SPELL_CHAOS_BLAST 37674 -#define SPELL_BERSERK 26662 -#define SPELL_INSIDIOUS_WHISPER 37676 -#define SPELL_DUAL_WIELD 42459 - -// --- Spells used in banish phase --- -#define BANISH_BEAM 38909 -#define AURA_BANISH 37833 - -// --- Spells used by Greyheart Spellbinders -#define SPELL_EARTHSHOCK 39076 -#define SPELL_MINDBLAST 37531 - -// --- Spells used by Inner Demons and Creature ID -#define INNER_DEMON_ID 21857 -#define AURA_DEMONIC_ALIGNMENT 37713 -#define SPELL_SHADOWBOLT 39309 -#define SPELL_SOUL_LINK 38007 -#define SPELL_CONSUMING_MADNESS 37749 //not supported by core yet - -//Misc. -#define MODEL_DEMON 20125 -#define MODEL_NIGHTELF 20514 -#define DEMON_FORM 21875 -#define MOB_SPELLBINDER 21806 -#define INNER_DEMON_VICTIM 1 - -#define SAY_AGGRO -1548009 -#define SAY_SWITCH_TO_DEMON -1548010 -#define SAY_INNER_DEMONS -1548011 -#define SAY_DEMON_SLAY1 -1548012 -#define SAY_DEMON_SLAY2 -1548013 -#define SAY_DEMON_SLAY3 -1548014 -#define SAY_NIGHTELF_SLAY1 -1548015 -#define SAY_NIGHTELF_SLAY2 -1548016 -#define SAY_NIGHTELF_SLAY3 -1548017 -#define SAY_FINAL_FORM -1548018 -#define SAY_FREE -1548019 -#define SAY_DEATH -1548020 +enum LeotherasTheBlind +{ + // Spells used by Leotheras The Blind + SPELL_WHIRLWIND = 37640, + SPELL_CHAOS_BLAST = 37674, + SPELL_BERSERK = 26662, + SPELL_INSIDIOUS_WHISPER = 37676, + SPELL_DUAL_WIELD = 42459, + + // Spells used in banish phase + BANISH_BEAM = 38909, + AURA_BANISH = 37833, + + // Spells used by Greyheart Spellbinders + SPELL_EARTHSHOCK = 39076, + SPELL_MINDBLAST = 37531, + + // Spells used by Inner Demons and Creature ID + INNER_DEMON_ID = 21857, + AURA_DEMONIC_ALIGNMENT = 37713, + SPELL_SHADOWBOLT = 39309, + SPELL_SOUL_LINK = 38007, + SPELL_CONSUMING_MADNESS = 37749, + + //Misc. + MODEL_DEMON = 20125, + MODEL_NIGHTELF = 20514, + DEMON_FORM = 21875, + MOB_SPELLBINDER = 21806, + INNER_DEMON_VICTIM = 1, + + SAY_AGGRO = 0, + SAY_SWITCH_TO_DEMON = 1, + SAY_INNER_DEMONS = 2, + SAY_DEMON_SLAY = 3, + SAY_NIGHTELF_SLAY = 4, + SAY_FINAL_FORM = 5, + SAY_FREE = 6, + SAY_DEATH = 7 +}; class mob_inner_demon : public CreatureScript { @@ -289,7 +288,7 @@ public: void StartEvent() { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_LEOTHERASTHEBLINDEVENT, IN_PROGRESS); } @@ -388,20 +387,13 @@ public: { if (victim->GetTypeId() != TYPEID_PLAYER) return; - - if (DemonForm) - { - DoScriptText(RAND(SAY_DEMON_SLAY1, SAY_DEMON_SLAY2, SAY_DEMON_SLAY3), me); - } - else - { - DoScriptText(RAND(SAY_NIGHTELF_SLAY1, SAY_NIGHTELF_SLAY2, SAY_NIGHTELF_SLAY3), me); - } + + Talk(DemonForm ? SAY_DEMON_SLAY : SAY_NIGHTELF_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); //despawn copy if (Demon) @@ -493,7 +485,7 @@ public: //switch to demon form me->RemoveAurasDueToSpell(SPELL_WHIRLWIND, 0); me->SetDisplayId(MODEL_DEMON); - DoScriptText(SAY_SWITCH_TO_DEMON, me); + Talk(SAY_SWITCH_TO_DEMON); me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID , 0); me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID+1, 0); DemonForm = true; @@ -556,7 +548,7 @@ public: } } } - DoScriptText(SAY_INNER_DEMONS, me); + Talk(SAY_INNER_DEMONS); InnerDemons_Timer = 999999; } else InnerDemons_Timer -= diff; @@ -595,7 +587,7 @@ public: IsFinalForm = true; DemonForm = false; - DoScriptText(SAY_FINAL_FORM, me); + Talk(SAY_FINAL_FORM); me->SetDisplayId(MODEL_NIGHTELF); me->LoadEquipment(me->GetEquipmentId()); } @@ -629,7 +621,7 @@ public: void StartEvent() { - DoScriptText(SAY_FREE, me); + Talk(SAY_FREE); } void KilledUnit(Unit* victim) @@ -637,7 +629,7 @@ public: if (victim->GetTypeId() != TYPEID_PLAYER) return; - DoScriptText(RAND(SAY_DEMON_SLAY1, SAY_DEMON_SLAY2, SAY_DEMON_SLAY3), me); + Talk(SAY_DEMON_SLAY); } void JustDied(Unit* /*killer*/) diff --git a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp index 32f03d4d1f9..9c7fdadc18a 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SerpentShrine/boss_morogrim_tidewalker.cpp @@ -30,37 +30,33 @@ EndScriptData */ enum eEnums { // Yell - SAY_AGGRO = -1548030, - SAY_SUMMON1 = -1548031, - SAY_SUMMON2 = -1548032, - SAY_SUMMON_BUBL1 = -1548033, - SAY_SUMMON_BUBL2 = -1548034, - SAY_SLAY1 = -1548035, - SAY_SLAY2 = -1548036, - SAY_SLAY3 = -1548037, - SAY_DEATH = -1548038, + SAY_AGGRO = 0, + SAY_SUMMON = 1, + SAY_SUMMON_BUBL = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, // Emotes - EMOTE_WATERY_GRAVE = -1548039, - EMOTE_EARTHQUAKE = -1548040, - EMOTE_WATERY_GLOBULES = -1548041, + EMOTE_WATERY_GRAVE = 5, + EMOTE_EARTHQUAKE = 6, + EMOTE_WATERY_GLOBULES = 7, // Spells - SPELL_TIDAL_WAVE = 37730, - SPELL_WATERY_GRAVE = 38049, - SPELL_EARTHQUAKE = 37764, - SPELL_WATERY_GRAVE_EXPLOSION = 37852, - - SPELL_WATERY_GRAVE_1 = 38023, - SPELL_WATERY_GRAVE_2 = 38024, - SPELL_WATERY_GRAVE_3 = 38025, - SPELL_WATERY_GRAVE_4 = 37850, - - SPELL_SUMMON_WATER_GLOBULE_1 = 37854, - SPELL_SUMMON_WATER_GLOBULE_2 = 37858, - SPELL_SUMMON_WATER_GLOBULE_3 = 37860, - SPELL_SUMMON_WATER_GLOBULE_4 = 37861, + SPELL_TIDAL_WAVE = 37730, + SPELL_WATERY_GRAVE = 38049, + SPELL_EARTHQUAKE = 37764, + SPELL_WATERY_GRAVE_EXPLOSION = 37852, + + SPELL_WATERY_GRAVE_1 = 38023, + SPELL_WATERY_GRAVE_2 = 38024, + SPELL_WATERY_GRAVE_3 = 38025, + SPELL_WATERY_GRAVE_4 = 37850, + + SPELL_SUMMON_WATER_GLOBULE_1 = 37854, + SPELL_SUMMON_WATER_GLOBULE_2 = 37858, + SPELL_SUMMON_WATER_GLOBULE_3 = 37860, + SPELL_SUMMON_WATER_GLOBULE_4 = 37861, // Creatures - NPC_WATER_GLOBULE = 21913, - NPC_TIDEWALKER_LURKER = 21920, + NPC_WATER_GLOBULE = 21913, + NPC_TIDEWALKER_LURKER = 21920 }; float MurlocCords[10][4] = @@ -130,7 +126,7 @@ public: void StartEvent() { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_MOROGRIMTIDEWALKEREVENT, IN_PROGRESS); @@ -138,12 +134,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_MOROGRIMTIDEWALKEREVENT, DONE); @@ -184,7 +180,7 @@ public: } else { - DoScriptText(RAND(SAY_SUMMON1, SAY_SUMMON2), me); + Talk(SAY_SUMMON); for (uint8 i = 0; i < 10; ++i) { @@ -193,7 +189,7 @@ public: if (target && Murloc) Murloc->AI()->AttackStart(target); } - DoScriptText(EMOTE_EARTHQUAKE, me); + Talk(EMOTE_EARTHQUAKE); Earthquake = false; Earthquake_Timer = 40000+rand()%5000; } @@ -235,9 +231,9 @@ public: } } - DoScriptText(RAND(SAY_SUMMON_BUBL1, SAY_SUMMON_BUBL2), me); + Talk(SAY_SUMMON_BUBL); - DoScriptText(EMOTE_WATERY_GRAVE, me); + Talk(EMOTE_WATERY_GRAVE); WateryGrave_Timer = 30000; } else WateryGrave_Timer -= diff; @@ -271,7 +267,7 @@ public: pGlobuleTarget->CastSpell(pGlobuleTarget, globulespell[g], true); } } - DoScriptText(EMOTE_WATERY_GLOBULES, me); + Talk(EMOTE_WATERY_GLOBULES); WateryGlobules_Timer = 25000; } else WateryGlobules_Timer -= diff; } diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp index 038300213a4..e2d581128fd 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_hydromancer_thespia.cpp @@ -32,20 +32,20 @@ EndContentData */ #include "ScriptedCreature.h" #include "steam_vault.h" -#define SAY_SUMMON -1545000 -#define SAY_AGGRO_1 -1545001 -#define SAY_AGGRO_2 -1545002 -#define SAY_AGGRO_3 -1545003 -#define SAY_SLAY_1 -1545004 -#define SAY_SLAY_2 -1545005 -#define SAY_DEAD -1545006 +enum HydromancerThespia +{ + SAY_SUMMON = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_DEAD = 3, -#define SPELL_LIGHTNING_CLOUD 25033 -#define SPELL_LUNG_BURST 31481 -#define SPELL_ENVELOPING_WINDS 31718 + SPELL_LIGHTNING_CLOUD = 25033, + SPELL_LUNG_BURST = 31481, + SPELL_ENVELOPING_WINDS = 31718, -#define SPELL_WATER_BOLT_VOLLEY 34449 -#define H_SPELL_WATER_BOLT_VOLLEY 37924 + SPELL_WATER_BOLT_VOLLEY = 34449, + H_SPELL_WATER_BOLT_VOLLEY = 37924 +}; class boss_hydromancer_thespia : public CreatureScript { @@ -82,7 +82,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEAD, me); + Talk(SAY_DEAD); if (instance) instance->SetData(TYPE_HYDROMANCER_THESPIA, DONE); @@ -90,12 +90,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); if (instance) instance->SetData(TYPE_HYDROMANCER_THESPIA, IN_PROGRESS); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp index 50cc913c669..6a70cb97759 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_mekgineer_steamrigger.cpp @@ -32,22 +32,19 @@ EndContentData */ #include "ScriptedCreature.h" #include "steam_vault.h" -#define SAY_MECHANICS -1545007 -#define SAY_AGGRO_1 -1545008 -#define SAY_AGGRO_2 -1545009 -#define SAY_AGGRO_3 -1545010 -#define SAY_AGGRO_4 -1545011 -#define SAY_SLAY_1 -1545012 -#define SAY_SLAY_2 -1545013 -#define SAY_SLAY_3 -1545014 -#define SAY_DEATH -1545015 - -#define SPELL_SUPER_SHRINK_RAY 31485 -#define SPELL_SAW_BLADE 31486 -#define SPELL_ELECTRIFIED_NET 35107 -#define H_SPELL_ENRAGE 1 //corrent enrage spell not known - -#define ENTRY_STREAMRIGGER_MECHANIC 17951 +enum MekgineerSteamrigger +{ + SAY_MECHANICS = 0, + SAY_AGGRO = 1, + SAY_SLAY = 2, + SAY_DEATH = 3, + + SPELL_SUPER_SHRINK_RAY = 31485, + SPELL_SAW_BLADE = 31486, + SPELL_ELECTRIFIED_NET = 35107, + + ENTRY_STREAMRIGGER_MECHANIC = 17951 +}; class boss_mekgineer_steamrigger : public CreatureScript { @@ -91,7 +88,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(TYPE_MEKGINEER_STEAMRIGGER, DONE); @@ -99,12 +96,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); if (instance) instance->SetData(TYPE_MEKGINEER_STEAMRIGGER, IN_PROGRESS); @@ -113,7 +110,7 @@ public: //no known summon spells exist void SummonMechanichs() { - DoScriptText(SAY_MECHANICS, me); + Talk(SAY_MECHANICS); DoSpawnCreature(ENTRY_STREAMRIGGER_MECHANIC, 5, 5, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000); DoSpawnCreature(ENTRY_STREAMRIGGER_MECHANIC, -5, 5, 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 240000); diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp index ac730292545..51c477365a3 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/boss_warlord_kalithresh.cpp @@ -28,21 +28,21 @@ EndScriptData */ #include "steam_vault.h" #include "SpellInfo.h" -#define SAY_INTRO -1545016 -#define SAY_REGEN -1545017 -#define SAY_AGGRO1 -1545018 -#define SAY_AGGRO2 -1545019 -#define SAY_AGGRO3 -1545020 -#define SAY_SLAY1 -1545021 -#define SAY_SLAY2 -1545022 -#define SAY_DEATH -1545023 - -#define SPELL_SPELL_REFLECTION 31534 -#define SPELL_IMPALE 39061 -#define SPELL_WARLORDS_RAGE 37081 -#define SPELL_WARLORDS_RAGE_NAGA 31543 - -#define SPELL_WARLORDS_RAGE_PROC 36453 +enum NagaDistiller +{ + SAY_INTRO = 0, + SAY_REGEN = 1, + SAY_AGGRO = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, + + SPELL_SPELL_REFLECTION = 31534, + SPELL_IMPALE = 39061, + SPELL_WARLORDS_RAGE = 37081, + SPELL_WARLORDS_RAGE_NAGA = 31543, + + SPELL_WARLORDS_RAGE_PROC = 36453 +}; class mob_naga_distiller : public CreatureScript { @@ -139,7 +139,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3), me); + Talk(SAY_AGGRO); if (instance) instance->SetData(TYPE_WARLORD_KALITHRESH, IN_PROGRESS); @@ -147,7 +147,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void SpellHit(Unit* /*caster*/, const SpellInfo* spell) @@ -161,7 +161,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(TYPE_WARLORD_KALITHRESH, DONE); @@ -176,7 +176,7 @@ public: { if (Creature* distiller = me->FindNearestCreature(17954, 100.0f)) { - DoScriptText(SAY_REGEN, me); + Talk(SAY_REGEN); DoCast(me, SPELL_WARLORDS_RAGE); CAST_AI(mob_naga_distiller::mob_naga_distillerAI, distiller->AI())->StartRageGen(me); } diff --git a/src/server/scripts/Outland/GruulsLair/boss_gruul.cpp b/src/server/scripts/Outland/GruulsLair/boss_gruul.cpp index 3443103fa70..797d0f0d799 100644 --- a/src/server/scripts/Outland/GruulsLair/boss_gruul.cpp +++ b/src/server/scripts/Outland/GruulsLair/boss_gruul.cpp @@ -30,17 +30,13 @@ EndScriptData */ enum eEnums { - SAY_AGGRO = -1565010, - SAY_SLAM1 = -1565011, - SAY_SLAM2 = -1565012, - SAY_SHATTER1 = -1565013, - SAY_SHATTER2 = -1565014, - SAY_SLAY1 = -1565015, - SAY_SLAY2 = -1565016, - SAY_SLAY3 = -1565017, - SAY_DEATH = -1565018, - - EMOTE_GROW = -1565019, + SAY_AGGRO = 0, + SAY_SLAM = 1, + SAY_SHATTER = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, + + EMOTE_GROW = 5, SPELL_GROWTH = 36300, SPELL_CAVE_IN = 36240, @@ -100,7 +96,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_GRUULEVENT, IN_PROGRESS); @@ -108,12 +104,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) { @@ -172,7 +168,7 @@ public: // Gruul can cast this spell up to 30 times if (m_uiGrowth_Timer <= uiDiff) { - DoScriptText(EMOTE_GROW, me); + Talk(EMOTE_GROW); DoCast(me, SPELL_GROWTH); m_uiGrowth_Timer = 30000; } diff --git a/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp b/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp index 03089d646f9..2d2c36104a2 100644 --- a/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp +++ b/src/server/scripts/Outland/GruulsLair/boss_high_king_maulgar.cpp @@ -27,46 +27,44 @@ EndScriptData */ #include "ScriptedCreature.h" #include "gruuls_lair.h" -#define SAY_AGGRO -1565000 -#define SAY_ENRAGE -1565001 -#define SAY_OGRE_DEATH1 -1565002 -#define SAY_OGRE_DEATH2 -1565003 -#define SAY_OGRE_DEATH3 -1565004 -#define SAY_OGRE_DEATH4 -1565005 -#define SAY_SLAY1 -1565006 -#define SAY_SLAY2 -1565007 -#define SAY_SLAY3 -1565008 -#define SAY_DEATH -1565009 - -// High King Maulgar -#define SPELL_ARCING_SMASH 39144 -#define SPELL_MIGHTY_BLOW 33230 -#define SPELL_WHIRLWIND 33238 -#define SPELL_BERSERKER_C 26561 -#define SPELL_ROAR 16508 -#define SPELL_FLURRY 33232 -#define SPELL_DUAL_WIELD 29651 //used in phase - -// Olm the Summoner -#define SPELL_DARK_DECAY 33129 -#define SPELL_DEATH_COIL 33130 -#define SPELL_SUMMON_WFH 33131 - -//Kiggler the Craed -#define SPELL_GREATER_POLYMORPH 33173 -#define SPELL_LIGHTNING_BOLT 36152 -#define SPELL_ARCANE_SHOCK 33175 -#define SPELL_ARCANE_EXPLOSION 33237 - -//Blindeye the Seer -#define SPELL_GREATER_PW_SHIELD 33147 -#define SPELL_HEAL 33144 -#define SPELL_PRAYER_OH 33152 - -//Krosh Firehand -#define SPELL_GREATER_FIREBALL 33051 -#define SPELL_SPELLSHIELD 33054 -#define SPELL_BLAST_WAVE 33061 +enum HighKingMaulgar +{ + SAY_AGGRO = 0, + SAY_ENRAGE = 1, + SAY_OGRE_DEATH = 2, + SAY_SLAY = 3, + SAY_DEATH = 4, + + // High King Maulgar + SPELL_ARCING_SMASH = 39144, + SPELL_MIGHTY_BLOW = 33230, + SPELL_WHIRLWIND = 33238, + SPELL_BERSERKER_C = 26561, + SPELL_ROAR = 16508, + SPELL_FLURRY = 33232, + SPELL_DUAL_WIELD = 29651, + + // Olm the Summoner + SPELL_DARK_DECAY = 33129, + SPELL_DEATH_COIL = 33130, + SPELL_SUMMON_WFH = 33131, + + //Kiggler the Craed + SPELL_GREATER_POLYMORPH = 33173, + SPELL_LIGHTNING_BOLT = 36152, + SPELL_ARCANE_SHOCK = 33175, + SPELL_ARCANE_EXPLOSION = 33237, + + //Blindeye the Seer + SPELL_GREATER_PW_SHIELD = 33147, + SPELL_HEAL = 33144, + SPELL_PRAYER_OH = 33152, + + //Krosh Firehand + SPELL_GREATER_FIREBALL = 33051, + SPELL_SPELLSHIELD = 33054, + SPELL_BLAST_WAVE = 33061 +}; bool CheckAllBossDied(InstanceScript* instance, Creature* me) { @@ -171,12 +169,12 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (CheckAllBossDied(instance, me)) instance->SetData(DATA_MAULGAREVENT, DONE); @@ -184,7 +182,7 @@ public: void AddDeath() { - DoScriptText(RAND(SAY_OGRE_DEATH1, SAY_OGRE_DEATH2, SAY_OGRE_DEATH3, SAY_OGRE_DEATH4), me); + Talk(SAY_OGRE_DEATH); } void EnterCombat(Unit* who) @@ -211,7 +209,7 @@ public: GetCouncil(); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); instance->SetData64(DATA_MAULGAREVENT_TANK, who->GetGUID()); instance->SetData(DATA_MAULGAREVENT, IN_PROGRESS); @@ -269,7 +267,7 @@ public: if (!Phase2 && HealthBelowPct(50)) { Phase2 = true; - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); DoCast(me, SPELL_DUAL_WIELD, true); me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID, 0); diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp index b42641c5171..4b364d1c0a8 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp @@ -29,7 +29,7 @@ EndScriptData */ enum eEnums { - SAY_AGGRO = -1542008, + SAY_AGGRO = 0, SPELL_SLIME_SPRAY = 30913, SPELL_POISON_CLOUD = 30916, @@ -73,7 +73,7 @@ class boss_broggok : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void JustSummoned(Creature* summoned) diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp index 3c07862e0f6..2fe95e1bf4d 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_kelidan_the_breaker.cpp @@ -35,14 +35,11 @@ EndContentData */ enum eKelidan { - SAY_WAKE = -1542000, - SAY_ADD_AGGRO_1 = -1542001, - SAY_ADD_AGGRO_2 = -1542002, - SAY_ADD_AGGRO_3 = -1542003, - SAY_KILL_1 = -1542004, - SAY_KILL_2 = -1542005, - SAY_NOVA = -1542006, - SAY_DIE = -1542007, + SAY_WAKE = 0, + SAY_ADD_AGGRO = 1, + SAY_KILL = 2, + SAY_NOVA = 3, + SAY_DIE = 4, SPELL_CORRUPTION = 30938, SPELL_EVOCATION = 30935, @@ -117,7 +114,7 @@ class boss_kelidan_the_breaker : public CreatureScript void EnterCombat(Unit* who) { - DoScriptText(SAY_WAKE, me); + Talk(SAY_WAKE); if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); DoStartMovement(who); @@ -130,7 +127,7 @@ class boss_kelidan_the_breaker : public CreatureScript if (rand()%2) return; - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void ChannelerEngaged(Unit* who) @@ -138,7 +135,7 @@ class boss_kelidan_the_breaker : public CreatureScript if (who && !addYell) { addYell = true; - DoScriptText(RAND(SAY_ADD_AGGRO_1, SAY_ADD_AGGRO_2, SAY_ADD_AGGRO_3), me); + Talk(SAY_ADD_AGGRO); } for (uint8 i=0; i<5; ++i) { @@ -194,7 +191,7 @@ class boss_kelidan_the_breaker : public CreatureScript void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); if (!instance) return; @@ -254,7 +251,7 @@ class boss_kelidan_the_breaker : public CreatureScript if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); - DoScriptText(SAY_NOVA, me); + Talk(SAY_NOVA); if (SpellInfo const* nova = sSpellMgr->GetSpellInfo(SPELL_BURNING_NOVA)) { diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp index df9aefabe15..4dfd7e8a8e8 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_the_maker.cpp @@ -29,17 +29,14 @@ EndScriptData */ enum eEnums { - SAY_AGGRO_1 = -1542009, - SAY_AGGRO_2 = -1542010, - SAY_AGGRO_3 = -1542011, - SAY_KILL_1 = -1542012, - SAY_KILL_2 = -1542013, - SAY_DIE = -1542014, - - SPELL_ACID_SPRAY = 38153, // heroic 38973 ??? 38153 + SAY_AGGRO = 0, + SAY_KILL = 1, + SAY_DIE = 2, + + SPELL_ACID_SPRAY = 38153, SPELL_EXPLODING_BREAKER = 30925, SPELL_KNOCKDOWN = 20276, - SPELL_DOMINATION = 25772 // ??? + SPELL_DOMINATION = 25772 }; class boss_the_maker : public CreatureScript @@ -81,7 +78,7 @@ class boss_the_maker : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); if (!instance) return; @@ -92,12 +89,12 @@ class boss_the_maker : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); if (!instance) return; diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp index 56365216be5..a40c2e480bd 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_omor_the_unscarred.cpp @@ -29,14 +29,12 @@ EndScriptData */ enum eSays { - SAY_AGGRO_1 = -1543009, - SAY_AGGRO_2 = -1543010, - SAY_AGGRO_3 = -1543011, - SAY_SUMMON = -1543012, - SAY_CURSE = -1543013, - SAY_KILL_1 = -1543014, - SAY_DIE = -1543015, - SAY_WIPE = -1543016, + SAY_AGGRO = 0, + SAY_SUMMON = 1, + SAY_CURSE = 2, + SAY_KILL_1 = 3, + SAY_DIE = 4, + SAY_WIPE = 5, }; enum eSpells @@ -79,7 +77,7 @@ class boss_omor_the_unscarred : public CreatureScript void Reset() { - DoScriptText(SAY_WIPE, me); + Talk(SAY_WIPE); OrbitalStrike_Timer = 25000; ShadowWhip_Timer = 2000; @@ -94,7 +92,7 @@ class boss_omor_the_unscarred : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) @@ -102,12 +100,12 @@ class boss_omor_the_unscarred : public CreatureScript if (rand()%2) return; - DoScriptText(SAY_KILL_1, me); + Talk(SAY_KILL_1); } void JustSummoned(Creature* summoned) { - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); if (Unit* random = SelectTarget(SELECT_TARGET_RANDOM, 0)) summoned->AI()->AttackStart(random); @@ -117,7 +115,7 @@ class boss_omor_the_unscarred : public CreatureScript void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); } void UpdateAI(const uint32 diff) @@ -192,7 +190,7 @@ class boss_omor_the_unscarred : public CreatureScript if (Aura_Timer <= diff) { - DoScriptText(SAY_CURSE, me); + Talk(SAY_CURSE); if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) { diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp index f0c4330c9a3..7fa476100d5 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_vazruden_the_herald.cpp @@ -39,7 +39,7 @@ enum eSpells SPELL_REVENGE = 19130, SPELL_REVENGE_H = 40392, SPELL_KIDNEY_SHOT = 30621, - SPELL_FIRE_NOVA_VISUAL = 19823, + SPELL_FIRE_NOVA_VISUAL = 19823 }; enum eUnits @@ -50,20 +50,17 @@ enum eUnits ENTRY_NAZAN = 17536, ENTRY_LIQUID_FIRE = 22515, ENTRY_REINFORCED_FEL_IRON_CHEST = 185168, - ENTRY_REINFORCED_FEL_IRON_CHEST_H = 185169, + ENTRY_REINFORCED_FEL_IRON_CHEST_H = 185169 }; enum eSays { - SAY_INTRO = -1543017, - SAY_WIPE = -1543018, - SAY_AGGRO_1 = -1543019, - SAY_AGGRO_2 = -1543020, - SAY_AGGRO_3 = -1543021, - SAY_KILL_1 = -1543022, - SAY_KILL_2 = -1543023, - SAY_DIE = -1543024, - EMOTE = -1543025, + SAY_INTRO = 0, + SAY_WIPE = 1, + SAY_AGGRO = 2, + SAY_KILL = 3, + SAY_DIE = 4, + EMOTE = 5 }; const float VazrudenMiddle[3] = {-1406.5f, 1746.5f, 81.2f}; @@ -153,7 +150,7 @@ class boss_nazan : public CreatureScript if (Unit* victim = SelectTarget(SELECT_TARGET_NEAREST, 0)) me->AI()->AttackStart(victim); DoStartMovement(me->getVictim()); - DoScriptText(EMOTE, me); + Talk(EMOTE); return; } else @@ -229,19 +226,19 @@ class boss_vazruden : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* who) { if (who && who->GetEntry() != ENTRY_VAZRUDEN) - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void JustDied(Unit* killer) { if (killer && killer != me) - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); } void UpdateAI(const uint32 diff) @@ -252,7 +249,7 @@ class boss_vazruden : public CreatureScript { if (!WipeSaid) { - DoScriptText(SAY_WIPE, me); + Talk(SAY_WIPE); WipeSaid = true; } me->DisappearAndDie(); @@ -364,7 +361,7 @@ class boss_vazruden_the_herald : public CreatureScript { phase = 1; check = 0; - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); } } diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp index 1d2ecccf3c7..156d5cbae2c 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp @@ -28,15 +28,12 @@ EndScriptData */ enum eSays { - SAY_TAUNT = -1543000, - SAY_HEAL = -1543001, - SAY_SURGE = -1543002, - SAY_AGGRO_1 = -1543003, - SAY_AGGRO_2 = -1543004, - SAY_AGGRO_3 = -1543005, - SAY_KILL_1 = -1543006, - SAY_KILL_2 = -1543007, - SAY_DIE = -1543008, + SAY_TAUNT = 0, + SAY_HEAL = 1, + SAY_SURGE = 2, + SAY_AGGRO = 3, + SAY_KILL = 4, + SAY_DIE = 5 }; enum eSpells @@ -81,7 +78,7 @@ class boss_watchkeeper_gargolmar : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void MoveInLineOfSight(Unit* who) @@ -99,7 +96,7 @@ class boss_watchkeeper_gargolmar : public CreatureScript } else if (!HasTaunted && me->IsWithinDistInMap(who, 60.0f)) { - DoScriptText(SAY_TAUNT, me); + Talk(SAY_TAUNT); HasTaunted = true; } } @@ -107,12 +104,12 @@ class boss_watchkeeper_gargolmar : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); } void UpdateAI(const uint32 diff) @@ -130,7 +127,7 @@ class boss_watchkeeper_gargolmar : public CreatureScript if (Surge_Timer <= diff) { - DoScriptText(SAY_SURGE, me); + Talk(SAY_SURGE); if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0)) DoCast(target, SPELL_SURGE); @@ -155,7 +152,7 @@ class boss_watchkeeper_gargolmar : public CreatureScript { if (HealthBelowPct(40)) { - DoScriptText(SAY_HEAL, me); + Talk(SAY_HEAL); YelledForHeal = true; } } diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp index 94272e4a50f..c5f79a2babd 100644 --- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/boss_magtheridon.cpp @@ -29,36 +29,22 @@ EndScriptData */ #include "Player.h" #include "SpellInfo.h" -struct Yell -{ - int32 id; -}; - -static Yell RandomTaunt[]= -{ - {-1544000}, - {-1544001}, - {-1544002}, - {-1544003}, - {-1544004}, - {-1544005}, -}; - enum eSays { - SAY_FREED = -1544006, - SAY_AGGRO = -1544007, - SAY_BANISH = -1544008, - SAY_CHAMBER_DESTROY = -1544009, - SAY_PLAYER_KILLED = -1544010, - SAY_DEATH = -1544011, + SAY_TAUNT = 0, + SAY_FREED = 1, + SAY_AGGRO = 2, + SAY_BANISH = 3, + SAY_CHAMBER_DESTROY = 4, + SAY_PLAYER_KILLED = 5, + SAY_DEATH = 6 }; enum eEmotes { - EMOTE_BERSERK = -1544012, - EMOTE_BLASTNOVA = -1544013, - EMOTE_BEGIN = -1544014, + EMOTE_BERSERK = 7, + EMOTE_BLASTNOVA = 8, + EMOTE_BEGIN = 9 }; enum eCreatures @@ -309,7 +295,7 @@ class boss_magtheridon : public CreatureScript // if 5 clickers from other cubes apply shadow cage if (ClickerNum >= CLICKERS_COUNT && !me->HasAura(SPELL_SHADOW_CAGE)) { - DoScriptText(SAY_BANISH, me); + Talk(SAY_BANISH); DoCast(me, SPELL_SHADOW_CAGE, true); } else @@ -322,7 +308,7 @@ class boss_magtheridon : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(SAY_PLAYER_KILLED, me); + Talk(SAY_PLAYER_KILLED); } void JustDied(Unit* /*killer*/) @@ -330,7 +316,7 @@ class boss_magtheridon : public CreatureScript if (instance) instance->SetData(DATA_MAGTHERIDON_EVENT, DONE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void MoveInLineOfSight(Unit* /*who*/) {} @@ -350,7 +336,7 @@ class boss_magtheridon : public CreatureScript me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); me->RemoveAurasDueToSpell(SPELL_SHADOW_CAGE_C); - DoScriptText(SAY_FREED, me); + Talk(SAY_FREED); } void UpdateAI(const uint32 diff) @@ -359,7 +345,7 @@ class boss_magtheridon : public CreatureScript { if (RandChat_Timer <= diff) { - DoScriptText(RandomTaunt[rand()%6].id, me); + Talk(SAY_TAUNT); RandChat_Timer = 90000; } else @@ -374,7 +360,7 @@ class boss_magtheridon : public CreatureScript if (Berserk_Timer <= diff) { DoCast(me, SPELL_BERSERK, true); - DoScriptText(EMOTE_BERSERK, me); + Talk(EMOTE_BERSERK); Berserk_Timer = 60000; } else @@ -393,7 +379,7 @@ class boss_magtheridon : public CreatureScript // to avoid earthquake interruption if (!me->HasUnitState(UNIT_STATE_STUNNED)) { - DoScriptText(EMOTE_BLASTNOVA, me); + Talk(EMOTE_BLASTNOVA); DoCast(me, SPELL_BLASTNOVA); BlastNova_Timer = 60000; } @@ -437,7 +423,7 @@ class boss_magtheridon : public CreatureScript && !me->HasUnitState(UNIT_STATE_STUNNED)) // shadow cage and earthquake { Phase3 = true; - DoScriptText(SAY_CHAMBER_DESTROY, me); + Talk(SAY_CHAMBER_DESTROY); DoCast(me, SPELL_CAMERA_SHAKE, true); DoCast(me, SPELL_DEBRIS_KNOCKDOWN, true); diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp index c6434d9a989..e5b6ea71eb0 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_nethekurse.cpp @@ -33,38 +33,15 @@ EndContentData */ #include "ScriptedCreature.h" #include "shattered_halls.h" -struct Say -{ - int32 id; -}; - -static Say PeonAttacked[]= -{ - {-1540001}, - {-1540002}, - {-1540003}, - {-1540004}, -}; -static Say PeonDies[]= -{ - {-1540005}, - {-1540006}, - {-1540007}, - {-1540008}, -}; - enum eSays { - SAY_INTRO = -1540000, - SAY_TAUNT_1 = -1540009, - SAY_TAUNT_2 = -1540010, - SAY_TAUNT_3 = -1540011, - SAY_AGGRO_1 = -1540012, - SAY_AGGRO_2 = -1540013, - SAY_AGGRO_3 = -1540014, - SAY_SLAY_1 = -1540015, - SAY_SLAY_2 = -1540016, - SAY_DIE = -1540017, + SAY_INTRO = 0, + SAY_PEON_ATTACKED = 1, + SAY_PEON_DIES = 2, + SAY_TAUNT = 3, + SAY_AGGRO = 4, + SAY_SLAY = 5, + SAY_DIE = 6 }; enum eSpells @@ -137,7 +114,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript if (PeonEngagedCount >= 4) return; - DoScriptText(PeonAttacked[PeonEngagedCount].id, me); + Talk(SAY_PEON_ATTACKED); ++PeonEngagedCount; } @@ -146,7 +123,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript if (PeonKilledCount >= 4) return; - DoScriptText(PeonDies[PeonKilledCount].id, me); + Talk(SAY_PEON_DIES); ++PeonKilledCount; if (PeonKilledCount == 4) @@ -159,7 +136,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript void DoTauntPeons() { - DoScriptText(RAND(SAY_TAUNT_1, SAY_TAUNT_2, SAY_TAUNT_3), me); + Talk(SAY_TAUNT); //TODO: kill the peons first IsIntroEvent = false; @@ -190,7 +167,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript if (who->GetTypeId() != TYPEID_PLAYER) return; - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); IntroOnce = true; IsIntroEvent = true; @@ -206,7 +183,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3), me); + Talk(SAY_AGGRO); } void JustSummoned(Creature* summoned) @@ -222,12 +199,12 @@ class boss_grand_warlock_nethekurse : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DIE, me); + Talk(SAY_DIE); if (!instance) return; diff --git a/src/server/scripts/Outland/blades_edge_mountains.cpp b/src/server/scripts/Outland/blades_edge_mountains.cpp index c263ac85ef5..3932b96ad07 100644 --- a/src/server/scripts/Outland/blades_edge_mountains.cpp +++ b/src/server/scripts/Outland/blades_edge_mountains.cpp @@ -87,11 +87,12 @@ public: enum eNetherdrake { - SAY_NIHIL_1 = -1000169, //signed for 5955 - SAY_NIHIL_2 = -1000170, //signed for 5955 - SAY_NIHIL_3 = -1000171, //signed for 5955 - SAY_NIHIL_4 = -1000172, //signed for 20021, used by 20021, 21817, 21820, 21821, 21823 - SAY_NIHIL_INTERRUPT = -1000173, //signed for 20021, used by 20021, 21817, 21820, 21821, 21823 + //Used by 20021, 21817, 21820, 21821, 21823 but not existing in database + SAY_NIHIL_1 = 0, + SAY_NIHIL_2 = 1, + SAY_NIHIL_3 = 2, + SAY_NIHIL_4 = 3, + SAY_NIHIL_INTERRUPT = 4, ENTRY_WHELP = 20021, ENTRY_PROTO = 21821, @@ -176,7 +177,7 @@ public: //we are nihil, so say before transform if (me->GetEntry() == ENTRY_NIHIL) { - DoScriptText(SAY_NIHIL_INTERRUPT, me); + Talk(SAY_NIHIL_INTERRUPT); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); IsNihil = false; } @@ -203,19 +204,19 @@ public: switch (NihilSpeech_Phase) { case 0: - DoScriptText(SAY_NIHIL_1, me); + Talk(SAY_NIHIL_1); ++NihilSpeech_Phase; break; case 1: - DoScriptText(SAY_NIHIL_2, me); + Talk(SAY_NIHIL_2); ++NihilSpeech_Phase; break; case 2: - DoScriptText(SAY_NIHIL_3, me); + Talk(SAY_NIHIL_3); ++NihilSpeech_Phase; break; case 3: - DoScriptText(SAY_NIHIL_4, me); + Talk(SAY_NIHIL_4); ++NihilSpeech_Phase; break; case 4: @@ -266,7 +267,7 @@ public: enum eDaranelle { - SAY_SPELL_INFLUENCE = -1000174, + SAY_SPELL_INFLUENCE = 0, SPELL_LASHHAN_CHANNEL = 36904 }; @@ -294,7 +295,7 @@ public: { if (who->HasAura(SPELL_LASHHAN_CHANNEL) && me->IsWithinDistInMap(who, 10.0f)) { - DoScriptText(SAY_SPELL_INFLUENCE, me, who); + Talk(SAY_SPELL_INFLUENCE, who->GetGUID()); //TODO: Move the below to updateAI and run if this statement == true DoCast(who, 37028, true); } |
