diff options
Diffstat (limited to 'src')
53 files changed, 1083 insertions, 1211 deletions
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp index 5699616563a..921d67d6d65 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp @@ -1176,7 +1176,7 @@ class npc_lorekeeper : public CreatureScript if (Creature* Branz = creature->FindNearestCreature(NPC_BRANZ_BRONZBEARD, 1000, true)) { Delorah->GetMotionMaster()->MovePoint(0, Branz->GetPositionX()-4, Branz->GetPositionY(), Branz->GetPositionZ()); - //TODO DoScriptText(xxxx, Delorah, Branz); when reached at branz + //TODO Delorah->AI()->Talk(xxxx, Branz->GetGUID()); when reached at branz } } } diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp index 0d4e3aad132..82845d10b8c 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp @@ -56,7 +56,7 @@ class boss_thorim : public CreatureScript void EnterEvadeMode() { - DoScriptText(SAY_WIPE, me); + Talk(SAY_WIPE); _EnterEvadeMode(); } @@ -68,7 +68,7 @@ class boss_thorim : public CreatureScript void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); _JustDied(); } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp index aaa95631792..4fe56b346b2 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_ingvar_the_plunderer.cpp @@ -29,14 +29,14 @@ EndScriptData */ enum Yells { //Yells Ingvar - YELL_AGGRO_1 = -1574005, - YELL_AGGRO_2 = -1574006, + YELL_AGGRO_1 = 0, + YELL_AGGRO_2 = 1, - YELL_DEAD_1 = -1574007, - YELL_DEAD_2 = -1574008, + YELL_DEAD_1 = 2, + YELL_DEAD_2 = 3, - YELL_KILL_1 = -1574009, - YELL_KILL_2 = -1574010, + YELL_KILL_1 = 4, + YELL_KILL_2 = 5, }; enum Creatures @@ -151,7 +151,7 @@ public: events.SetPhase(PHASE_EVENT); events.ScheduleEvent(EVENT_SUMMON_BANSHEE, 3 * IN_MILLISECONDS, 0, PHASE_EVENT); - DoScriptText(YELL_DEAD_1, me); + Talk(YELL_DEAD_1); } if (events.GetPhaseMask() & (1 << PHASE_EVENT)) @@ -164,13 +164,13 @@ public: me->UpdateEntry(MOB_INGVAR_UNDEAD); events.ScheduleEvent(EVENT_JUST_TRANSFORMED, 2 * IN_MILLISECONDS, 0, PHASE_EVENT); - DoScriptText(YELL_AGGRO_2, me); + Talk(YELL_AGGRO_2); } void EnterCombat(Unit* /*who*/) { if (!bIsUndead) - DoScriptText(YELL_AGGRO_1, me); + Talk(YELL_AGGRO_1); if (instance) instance->SetData(DATA_INGVAR_EVENT, IN_PROGRESS); @@ -180,7 +180,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(YELL_DEAD_2, me); + Talk(YELL_DEAD_2); if (instance) { @@ -201,10 +201,7 @@ public: void KilledUnit(Unit* /*victim*/) { - if (bIsUndead) - DoScriptText(YELL_KILL_1, me); - else - DoScriptText(YELL_KILL_2, me); + Talk(bIsUndead ? YELL_KILL_1 : YELL_KILL_2); } void UpdateAI(const uint32 diff) @@ -329,7 +326,7 @@ public: { me->GetMotionMaster()->MovePoint(1, x, y, z+15); - // DoScriptText(YELL_RESSURECT, me); + // Talk(YELL_RESSURECT); } } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp index 7c977250e79..aad4c9989c1 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/boss_skarvald_dalronn.cpp @@ -29,18 +29,18 @@ EndScriptData */ enum eEnums { //signed for 24200, but used by 24200, 27390 - YELL_SKARVALD_AGGRO = -1574011, - YELL_SKARVALD_DAL_DIED = -1574012, - YELL_SKARVALD_SKA_DIEDFIRST = -1574013, - YELL_SKARVALD_KILL = -1574014, - YELL_SKARVALD_DAL_DIEDFIRST = -1574015, + YELL_SKARVALD_AGGRO = 0, + YELL_SKARVALD_DAL_DIED = 1, + YELL_SKARVALD_SKA_DIEDFIRST = 2, + YELL_SKARVALD_KILL = 3, + YELL_SKARVALD_DAL_DIEDFIRST = 4, //signed for 24201, but used by 24201, 27389 - YELL_DALRONN_AGGRO = -1574016, - YELL_DALRONN_SKA_DIED = -1574017, - YELL_DALRONN_DAL_DIEDFIRST = -1574018, - YELL_DALRONN_KILL = -1574019, - YELL_DALRONN_SKA_DIEDFIRST = -1574020, + YELL_DALRONN_AGGRO = 0, + YELL_DALRONN_SKA_DIED = 1, + YELL_DALRONN_DAL_DIEDFIRST = 2, + YELL_DALRONN_KILL = 3, + YELL_DALRONN_SKA_DIEDFIRST = 4, //Spells of Skarvald and his Ghost MOB_SKARVALD_THE_CONSTRUCTOR = 24200, @@ -123,7 +123,7 @@ public: { if (!ghost && instance) { - DoScriptText(YELL_SKARVALD_AGGRO, me); + Talk(YELL_SKARVALD_AGGRO); Unit* dalronn = Unit::GetUnit(*me, instance->GetData64(DATA_DALRONN)); if (dalronn && dalronn->isAlive() && !dalronn->getVictim()) @@ -151,13 +151,13 @@ public: { if (dalronn->isDead()) { - DoScriptText(YELL_SKARVALD_DAL_DIED, me); + Talk(YELL_SKARVALD_DAL_DIED); instance->SetData(DATA_SKARVALD_DALRONN_EVENT, DONE); } else { - DoScriptText(YELL_SKARVALD_SKA_DIEDFIRST, me); + Talk(YELL_SKARVALD_SKA_DIEDFIRST); me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE); //DoCast(me, SPELL_SUMMON_SKARVALD_GHOST, true); @@ -176,7 +176,7 @@ public: { if (!ghost) { - DoScriptText(YELL_SKARVALD_KILL, me); + Talk(YELL_SKARVALD_KILL); } } @@ -211,7 +211,7 @@ public: { if (Response_Timer <= diff) { - DoScriptText(YELL_SKARVALD_DAL_DIEDFIRST, me); + Talk(YELL_SKARVALD_DAL_DIEDFIRST); Response_Timer = 0; } else Response_Timer -= diff; @@ -310,14 +310,14 @@ public: { if (skarvald->isDead()) { - DoScriptText(YELL_DALRONN_SKA_DIED, me); + Talk(YELL_DALRONN_SKA_DIED); if (instance) instance->SetData(DATA_SKARVALD_DALRONN_EVENT, DONE); } else { - DoScriptText(YELL_DALRONN_DAL_DIEDFIRST, me); + Talk(YELL_DALRONN_DAL_DIEDFIRST); me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE); //DoCast(me, SPELL_SUMMON_DALRONN_GHOST, true); @@ -336,7 +336,7 @@ public: { if (!ghost) { - DoScriptText(YELL_DALRONN_KILL, me); + Talk(YELL_DALRONN_KILL); } } @@ -355,7 +355,7 @@ public: { if (AggroYell_Timer <= diff) { - DoScriptText(YELL_DALRONN_AGGRO, me); + Talk(YELL_DALRONN_AGGRO); AggroYell_Timer = 0; } else AggroYell_Timer -= diff; @@ -382,7 +382,7 @@ public: { if (Response_Timer <= diff) { - DoScriptText(YELL_DALRONN_SKA_DIEDFIRST, me); + Talk(YELL_DALRONN_SKA_DIEDFIRST); Response_Timer = 0; } else Response_Timer -= diff; } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp index 8cbfe4bafb4..d2772514edf 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp @@ -47,10 +47,9 @@ enum OrbSpells //not in db enum Yells { - SAY_AGGRO = -1575000, - SAY_SLAY_1 = -1575001, - SAY_SLAY_2 = -1575002, - SAY_DEATH = -1575003 + SAY_AGGRO = 0, + SAY_SLAY = 1 + //SAY_DEATH = 2 Missing in database }; enum Creatures @@ -155,7 +154,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void AttackStart(Unit* who) @@ -212,7 +211,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + //Talk(SAY_DEATH); if (instance) instance->SetData(DATA_GORTOK_PALEHOOF_EVENT, DONE); Creature* temp = Unit::GetCreature((*me), instance ? instance->GetData64(DATA_MOB_ORB) : 0); @@ -222,7 +221,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void NextPhase() diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp index 63898e57c08..45bab11c46a 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_skadi.cpp @@ -34,16 +34,13 @@ Script Data End */ //Yell enum eYells { - SAY_AGGRO = -1575004, - SAY_KILL_1 = -1575005, - SAY_KILL_2 = -1575006, - EMOTE_RANGE = -1575007, //Skadi - SAY_DEATH = -1575008, - SAY_DRAKE_DEATH = -1575009, - EMOTE_BREATH = -1575010, //Grauf - SAY_DRAKE_BREATH_1 = -1575011, - SAY_DRAKE_BREATH_2 = -1575012, - SAY_DRAKE_BREATH_3 = -1575013, + SAY_AGGRO = 0, + SAY_KILL = 1, + EMOTE_RANGE = 2, + SAY_DEATH = 3, + SAY_DRAKE_DEATH = 4, + EMOTE_BREATH = 5, + SAY_DRAKE_BREATH = 6 }; static Position SpawnLoc = {468.931f, -513.555f, 104.723f, 0}; @@ -230,7 +227,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE); @@ -297,7 +294,7 @@ public: } me->GetMotionMaster()->MoveJump(Location[4].GetPositionX(), Location[4].GetPositionY(), Location[4].GetPositionZ(), 5.0f, 10.0f); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE); - DoScriptText(SAY_DRAKE_DEATH, me); + Talk(SAY_DRAKE_DEATH); m_uiCrushTimer = 8000; m_uiPoisonedSpearTimer = 10000; m_uiWhirlwindTimer = 20000; @@ -319,7 +316,7 @@ public: me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE); if (!m_bSaidEmote) { - DoScriptText(EMOTE_RANGE, me); + Talk(EMOTE_RANGE); m_bSaidEmote = true; } } @@ -360,8 +357,8 @@ public: break; case 3: me->GetMotionMaster()->MovePoint(0, Location[69].GetPositionX(), Location[69].GetPositionY(), Location[69].GetPositionZ()); - DoScriptText(RAND(SAY_DRAKE_BREATH_1, SAY_DRAKE_BREATH_2), me); - DoScriptText(EMOTE_BREATH, me); + Talk(SAY_DRAKE_BREATH); + Talk(EMOTE_BREATH); m_uiMovementTimer = 2500; break; case 4: @@ -413,7 +410,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); Summons.DespawnAll(); if (instance) instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, DONE); @@ -421,7 +418,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void SpawnMobs() diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp index 0278125deb3..96cfee7c2b8 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_ymiron.cpp @@ -55,16 +55,13 @@ enum Spells //not in db enum Yells { - SAY_AGGRO = -1575028, - SAY_SLAY_1 = -1575029, - SAY_SLAY_2 = -1575030, - SAY_SLAY_3 = -1575031, - SAY_SLAY_4 = -1575032, - SAY_DEATH = -1575033, - SAY_SUMMON_BJORN = -1575034, - SAY_SUMMON_HALDOR = -1575035, - SAY_SUMMON_RANULF = -1575036, - SAY_SUMMON_TORGYN = -1575037 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SUMMON_BJORN = 3, + SAY_SUMMON_HALDOR = 4, + SAY_SUMMON_RANULF = 5, + SAY_SUMMON_TORGYN = 6 }; enum Creatures @@ -190,7 +187,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_KING_YMIRON_EVENT, IN_PROGRESS); @@ -216,7 +213,7 @@ public: { if (m_uiPause_Timer <= diff) { - DoScriptText(ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].say, me); + Talk(ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].say); DoCast(me, SPELL_CHANNEL_YMIRON_TO_SPIRIT); // should be on spirit if (Creature* temp = me->SummonCreature(ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].npc, ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].SpawnX, ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].SpawnY, ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].SpawnZ, ActiveBoat[m_uiActiveOrder[m_uiActivedNumber]].SpawnO, TEMPSUMMON_CORPSE_DESPAWN, 0)) { @@ -370,7 +367,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); DespawnBoatGhosts(m_uiActivedCreatureGUID); DespawnBoatGhosts(m_uiOrbGUID); @@ -381,7 +378,7 @@ public: void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3, SAY_SLAY_4), me); + Talk(SAY_SLAY); } void DespawnBoatGhosts(uint64 m_uiCreatureGUID) diff --git a/src/server/scripts/Northrend/VaultOfArchavon/boss_archavon.cpp b/src/server/scripts/Northrend/VaultOfArchavon/boss_archavon.cpp index 96e0bc66bd1..8a5e25e4487 100644 --- a/src/server/scripts/Northrend/VaultOfArchavon/boss_archavon.cpp +++ b/src/server/scripts/Northrend/VaultOfArchavon/boss_archavon.cpp @@ -19,7 +19,10 @@ #include "ScriptedCreature.h" #include "vault_of_archavon.h" -#define EMOTE_BERSERK -1590002 +enum +{ + EMOTE_BERSERK = 0 +}; //Spells Archavon #define SPELL_ROCK_SHARDS 58678 @@ -109,7 +112,7 @@ class boss_archavon : public CreatureScript break; case EVENT_BERSERK: DoCast(me, SPELL_BERSERK); - DoScriptText(EMOTE_BERSERK, me); + Talk(EMOTE_BERSERK); break; default: break; diff --git a/src/server/scripts/Northrend/VaultOfArchavon/boss_emalon.cpp b/src/server/scripts/Northrend/VaultOfArchavon/boss_emalon.cpp index 903280d317a..b61bb20389d 100644 --- a/src/server/scripts/Northrend/VaultOfArchavon/boss_emalon.cpp +++ b/src/server/scripts/Northrend/VaultOfArchavon/boss_emalon.cpp @@ -37,9 +37,9 @@ enum Spells enum BossEmotes { - EMOTE_OVERCHARGE = -1590000, - EMOTE_MINION_RESPAWN = -1590001, - EMOTE_BERSERK = -1590002, + EMOTE_OVERCHARGE = 0, + EMOTE_MINION_RESPAWN = 1, + EMOTE_BERSERK = 2 }; enum Events @@ -146,14 +146,14 @@ class boss_emalon : public CreatureScript { minion->CastSpell(me, SPELL_OVERCHARGED, true); minion->SetFullHealth(); - DoScriptText(EMOTE_OVERCHARGE, me); + Talk(EMOTE_OVERCHARGE); events.ScheduleEvent(EVENT_OVERCHARGE, 45000); } } break; case EVENT_BERSERK: DoCast(me, SPELL_BERSERK); - DoScriptText(EMOTE_BERSERK, me); + Talk(EMOTE_BERSERK); break; default: break; @@ -198,7 +198,7 @@ class mob_tempest_minion : public CreatureScript if (emalon->isAlive()) { emalon->SummonCreature(MOB_TEMPEST_MINION, 0, 0, 0, 0, TEMPSUMMON_CORPSE_DESPAWN, 0); - DoScriptText(EMOTE_MINION_RESPAWN, me); + Talk(EMOTE_MINION_RESPAWN); } } } @@ -244,7 +244,7 @@ class mob_tempest_minion : public CreatureScript { DoCast(me, SPELL_OVERCHARGED_BLAST); me->DespawnOrUnsummon(); - DoScriptText(EMOTE_MINION_RESPAWN, me); + Talk(EMOTE_MINION_RESPAWN); } } } diff --git a/src/server/scripts/Northrend/VioletHold/boss_cyanigosa.cpp b/src/server/scripts/Northrend/VioletHold/boss_cyanigosa.cpp index b4ce402e7de..7b1b9e96baf 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_cyanigosa.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_cyanigosa.cpp @@ -34,16 +34,13 @@ enum Spells enum Yells { - SAY_AGGRO = -1608000, - SAY_SLAY_1 = -1608001, - SAY_SLAY_2 = -1608002, - SAY_SLAY_3 = -1608003, - SAY_DEATH = -1608004, - SAY_SPAWN = -1608005, - SAY_DISRUPTION = -1608006, - SAY_BREATH_ATTACK = -1608007, - SAY_SPECIAL_ATTACK_1 = -1608008, - SAY_SPECIAL_ATTACK_2 = -1608009 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SPAWN = 3, + SAY_DISRUPTION = 4, + SAY_BREATH_ATTACK = 5, + SAY_SPECIAL_ATTACK = 6 }; class boss_cyanigosa : public CreatureScript @@ -84,7 +81,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_CYANIGOSA_EVENT, IN_PROGRESS); @@ -144,7 +141,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_CYANIGOSA_EVENT, DONE); @@ -154,7 +151,7 @@ public: { if (victim == me) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } }; diff --git a/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp b/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp index bd59b731c3c..15cd12140cf 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_erekem.cpp @@ -34,14 +34,12 @@ enum Spells enum Yells { - SAY_AGGRO = -1608010, - SAY_SLAY_1 = -1608011, - SAY_SLAY_2 = -1608012, - SAY_SLAY_3 = -1608013, - SAY_DEATH = -1608014, - SAY_SPAWN = -1608015, - SAY_ADD_KILLED = -1608016, - SAY_BOTH_ADDS_KILLED = -1608017 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SPAWN = 3, + SAY_ADD_KILLED = 4, + SAY_BOTH_ADDS_KILLED = 5 }; class boss_erekem : public CreatureScript @@ -125,7 +123,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoCast(me, SPELL_EARTH_SHIELD); if (instance) @@ -209,7 +207,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) { @@ -230,7 +228,7 @@ public: { if (victim == me) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } uint64 GetChainHealTargetGUID() diff --git a/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp b/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp index cea00417233..fba7efe43ab 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp @@ -40,15 +40,13 @@ enum IchoronCreatures enum Yells { - SAY_AGGRO = -1608018, - SAY_SLAY_1 = -1608019, - SAY_SLAY_2 = -1608020, - SAY_SLAY_3 = -1608021, - SAY_DEATH = -1608022, - SAY_SPAWN = -1608023, - SAY_ENRAGE = -1608024, - SAY_SHATTER = -1608025, - SAY_BUBBLE = -1608026 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SPAWN = 3, + SAY_ENRAGE = 4, + SAY_SHATTER = 5, + SAY_BUBBLE = 6 }; enum Actions @@ -120,7 +118,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoCast(me, SPELL_PROTECTIVE_BUBBLE); @@ -189,7 +187,7 @@ public: if (!HealthBelowPct(25)) { - DoScriptText(SAY_BUBBLE, me); + Talk(SAY_BUBBLE); DoCast(me, SPELL_PROTECTIVE_BUBBLE, true); } @@ -214,7 +212,7 @@ public: if (!bIsFrenzy && HealthBelowPct(25) && !bIsExploded) { - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); DoCast(me, SPELL_FRENZY, true); bIsFrenzy = true; } @@ -227,7 +225,7 @@ public: { if (!me->HasAura(SPELL_PROTECTIVE_BUBBLE, 0)) { - DoScriptText(SAY_SHATTER, me); + Talk(SAY_SHATTER); DoCast(me, SPELL_WATER_BLAST); DoCast(me, SPELL_DRAINED); bIsExploded = true; @@ -277,7 +275,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (bIsExploded) { @@ -326,7 +324,7 @@ public: { if (victim == me) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } }; diff --git a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp index 58d7b59c7dd..429b2ac32ea 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_xevozz.cpp @@ -22,41 +22,38 @@ enum Spells { - SPELL_ARCANE_BARRAGE_VOLLEY = 54202, - SPELL_ARCANE_BARRAGE_VOLLEY_H = 59483, - SPELL_ARCANE_BUFFET = 54226, - SPELL_ARCANE_BUFFET_H = 59485, - SPELL_SUMMON_ETHEREAL_SPHERE_1 = 54102, - SPELL_SUMMON_ETHEREAL_SPHERE_2 = 54137, - SPELL_SUMMON_ETHEREAL_SPHERE_3 = 54138, + SPELL_ARCANE_BARRAGE_VOLLEY = 54202, + SPELL_ARCANE_BARRAGE_VOLLEY_H = 59483, + SPELL_ARCANE_BUFFET = 54226, + SPELL_ARCANE_BUFFET_H = 59485, + SPELL_SUMMON_ETHEREAL_SPHERE_1 = 54102, + SPELL_SUMMON_ETHEREAL_SPHERE_2 = 54137, + SPELL_SUMMON_ETHEREAL_SPHERE_3 = 54138, }; enum NPCs { - NPC_ETHEREAL_SPHERE = 29271, - //NPC_ETHEREAL_SPHERE2 = 32582, // heroic only? + NPC_ETHEREAL_SPHERE = 29271, + //NPC_ETHEREAL_SPHERE2 = 32582, // heroic only? }; enum CreatureSpells { - SPELL_ARCANE_POWER = 54160, - H_SPELL_ARCANE_POWER = 59474, - SPELL_SUMMON_PLAYERS = 54164, - SPELL_POWER_BALL_VISUAL = 54141, + SPELL_ARCANE_POWER = 54160, + H_SPELL_ARCANE_POWER = 59474, + SPELL_SUMMON_PLAYERS = 54164, + SPELL_POWER_BALL_VISUAL = 54141, }; enum Yells { - SAY_AGGRO = -1608027, - SAY_SLAY_1 = -1608028, - SAY_SLAY_2 = -1608029, - SAY_SLAY_3 = -1608030, - SAY_DEATH = -1608031, - SAY_SPAWN = -1608032, - SAY_CHARGED = -1608033, - SAY_REPEAT_SUMMON_1 = -1608034, - SAY_REPEAT_SUMMON_2 = -1608035, - SAY_SUMMON_ENERGY = -1608036 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SPAWN = 3, + SAY_CHARGED = 4, + SAY_REPEAT_SUMMON = 5, + SAY_SUMMON_ENERGY = 6 }; class boss_xevozz : public CreatureScript @@ -139,7 +136,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) { if (GameObject* pDoor = instance->instance->GetGameObject(instance->GetData64(DATA_XEVOZZ_CELL))) @@ -182,7 +179,7 @@ public: if (uiSummonEtherealSphere_Timer < uiDiff) { - DoScriptText(SAY_SPAWN, me); + Talk(SAY_SPAWN); DoCast(me, SPELL_SUMMON_ETHEREAL_SPHERE_1); if (IsHeroic()) // extra one for heroic me->SummonCreature(NPC_ETHEREAL_SPHERE, me->GetPositionX()-5+rand()%10, me->GetPositionY()-5+rand()%10, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 40000); @@ -197,7 +194,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); DespawnSphere(); @@ -220,7 +217,7 @@ public: if (victim == me) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } }; diff --git a/src/server/scripts/Northrend/VioletHold/boss_zuramat.cpp b/src/server/scripts/Northrend/VioletHold/boss_zuramat.cpp index 408a7083383..5216ae9f08d 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_zuramat.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_zuramat.cpp @@ -38,14 +38,12 @@ enum ZuramatCreatures enum Yells { - SAY_AGGRO = -1608037, - SAY_SLAY_1 = -1608038, - SAY_SLAY_2 = -1608039, - SAY_SLAY_3 = -1608040, - SAY_DEATH = -1608041, - SAY_SPAWN = -1608042, - SAY_SHIELD = -1608043, - SAY_WHISPER = -1608044 + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_SPAWN = 3, + SAY_SHIELD = 4, + SAY_WHISPER = 5 }; #define DATA_VOID_DANCE 2153 @@ -106,7 +104,7 @@ public: void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) { if (GameObject* pDoor = instance->instance->GetGameObject(instance->GetData64(DATA_ZURAMAT_CELL))) @@ -168,7 +166,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) { @@ -190,7 +188,7 @@ public: if (victim == me) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2, SAY_SLAY_3), me); + Talk(SAY_SLAY); } void JustSummoned(Creature* summon) diff --git a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp index 5e3bbc01025..e971ecdcac2 100644 --- a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp @@ -94,7 +94,7 @@ const Position MiddleRoomPortalSaboLocation = {1896.622925f, 804.854126f, 38.504 //Cyanigosa's prefight event data enum Yells { - CYANIGOSA_SAY_SPAWN = -1608005 + CYANIGOSA_SAY_SPAWN = 0 }; enum Spells @@ -742,7 +742,7 @@ public: { case 1: pCyanigosa->CastSpell(pCyanigosa, CYANIGOSA_BLUE_AURA, false); - DoScriptText(CYANIGOSA_SAY_SPAWN, pCyanigosa); + pCyanigosa->AI()->Talk(CYANIGOSA_SAY_SPAWN); uiCyanigosaEventTimer = 7*IN_MILLISECONDS; ++uiCyanigosaEventPhase; break; diff --git a/src/server/scripts/Northrend/VioletHold/violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/violet_hold.cpp index c73cb97f2d1..5e326af9891 100644 --- a/src/server/scripts/Northrend/VioletHold/violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/violet_hold.cpp @@ -125,7 +125,7 @@ enum Spells enum eSinclari { - SAY_SINCLARI_1 = -1608045 + SAY_SINCLARI_1 = 0 }; float FirstPortalWPs [6][3] = @@ -353,7 +353,7 @@ public: switch (uiPhase) { case 1: - DoScriptText(SAY_SINCLARI_1, me); + Talk(SAY_SINCLARI_1); uiTimer = 4000; uiPhase = 2; break; diff --git a/src/server/scripts/Northrend/zuldrak.cpp b/src/server/scripts/Northrend/zuldrak.cpp index e5763e5baf6..506c34d40fb 100644 --- a/src/server/scripts/Northrend/zuldrak.cpp +++ b/src/server/scripts/Northrend/zuldrak.cpp @@ -121,9 +121,9 @@ enum eRageclaw SPELL_KNEEL = 39656 }; -const char * SAY_RAGECLAW_1 = "I poop on you, trollses!"; -const char * SAY_RAGECLAW_2 = "ARRRROOOOGGGGAAAA!"; -const char * SAY_RAGECLAW_3 = "No more mister nice wolvar!"; +const char* SAY_RAGECLAW_1 = "I poop on you, trollses!"; +const char* SAY_RAGECLAW_2 = "ARRRROOOOGGGGAAAA!"; +const char* SAY_RAGECLAW_3 = "No more mister nice wolvar!"; #define SAY_RAGECLAW RAND(SAY_RAGECLAW_1, SAY_RAGECLAW_2, SAY_RAGECLAW_3) @@ -265,14 +265,16 @@ enum eGurgthock NPC_FIEND_FIRE = 30042, NPC_FIEND_EARTH = 30043, - SAY_QUEST_ACCEPT_TUSKARRMAGEDON = -1571031, - SAY_QUEST_ACCEPT_KORRAK_1 = -1571033, - SAY_QUEST_ACCEPT_KORRAK_2 = -1571034, - SAY_QUEST_ACCEPT_MAGNATAUR = -1571035, + SAY_QUEST_ACCEPT_TUSKARRMAGEDON = 0, + SAY_QUEST_ACCEPT_KORRAK_1 = 1, + SAY_QUEST_ACCEPT_KORRAK_2 = 2, + SAY_QUEST_ACCEPT_MAGNATAUR = 3, + EMOTE_YGGDRAS_SPAWN = 4, + SAY_STINKBEARD_SPAWN = 5, + SAY_GURGTHOCK_ELEMENTAL_SPAWN = 6, - EMOTE_YGGDRAS_SPAWN = -1571039, - SAY_STINKBEARD_SPAWN = -1571040, - SAY_GURGTHOCK_ELEMENTAL_SPAWN = -1571041, + SAY_CALL_FOR_HELP = 0, + SAY_RECRUIT = 0, SPELL_CRASHING_WAVE = 55909, // water SPELL_SHOCKWAVE = 55918, // earth @@ -380,12 +382,12 @@ public: switch (uiValue) { case QUEST_AMPHITHEATER_ANGUISH_TUSKARRMAGEDDON: - DoScriptText(SAY_QUEST_ACCEPT_TUSKARRMAGEDON, me); + Talk(SAY_QUEST_ACCEPT_TUSKARRMAGEDON); uiPhase = 1; uiTimer = 4000; break; case QUEST_AMPHITHEATER_ANGUISH_KORRAK_BLOODRAGER: - DoScriptText(SAY_QUEST_ACCEPT_KORRAK_1, me); + Talk(SAY_QUEST_ACCEPT_KORRAK_1); uiPhase = 3; uiTimer = 3000; break; @@ -443,7 +445,7 @@ public: SummonGUID = 0; break; case 3: - DoScriptText(SAY_QUEST_ACCEPT_KORRAK_2, me); + Talk(SAY_QUEST_ACCEPT_KORRAK_2); uiTimer = 3000; uiPhase = 4; break; @@ -477,7 +479,7 @@ public: } break; case 8: - DoScriptText(SAY_QUEST_ACCEPT_MAGNATAUR, me); + Talk(SAY_QUEST_ACCEPT_MAGNATAUR); uiTimer = 5000; uiPhase = 11; break; @@ -494,12 +496,12 @@ public: break; case 10: me->SummonCreature(NPC_YGGDRAS, SpawnPosition[1], TEMPSUMMON_CORPSE_DESPAWN, 1000); - DoScriptText(EMOTE_YGGDRAS_SPAWN, me); + Talk(EMOTE_YGGDRAS_SPAWN); uiPhase = 0; break; case 11: if (Creature* creature = me->SummonCreature(NPC_STINKBEARD, SpawnPosition[0], TEMPSUMMON_CORPSE_DESPAWN, 1000)) - DoScriptText(SAY_STINKBEARD_SPAWN, creature); + creature->AI()->Talk(SAY_STINKBEARD_SPAWN); uiPhase = 0; break; case 12: @@ -514,7 +516,7 @@ public: } break; case 13: - DoScriptText(SAY_GURGTHOCK_ELEMENTAL_SPAWN, me); + Talk(SAY_GURGTHOCK_ELEMENTAL_SPAWN); uiTimer = 3000; uiPhase = 14; break; @@ -575,9 +577,7 @@ enum eOrinokoTuskbreaker SPELL_SUMMON_WHISKER = 55946, NPC_WHISKER = 30113, - NPC_HUNGRY_PENGUIN = 30110, - - SAY_CALL_FOR_HELP = -1571032 + NPC_HUNGRY_PENGUIN = 30110 }; class npc_orinoko_tuskbreaker : public CreatureScript @@ -659,7 +659,7 @@ public: if (!bSummoned && !HealthAbovePct(50)) { - DoScriptText(SAY_CALL_FOR_HELP, me); + Talk(SAY_CALL_FOR_HELP); //DoCast(me->getVictim(), SPELL_SUMMON_WHISKER); petai is not working correctly??? if (Creature* pWhisker = me->SummonCreature(NPC_WHISKER, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 0)) @@ -1282,11 +1282,7 @@ enum eCrusade_recruit QUEST_TROLL_PATROL_INTESTINAL_FORTITUDE = 12509, - GOSSIP_CRUSADE_TEXT = 13069, - - SAY_RECRUIT_1 = -1571036, - SAY_RECRUIT_2 = -1571037, - SAY_RECRUIT_3 = -1571038 + GOSSIP_CRUSADE_TEXT = 13069 }; #define GOSSIP_ITEM_1 "Get out there and make those Scourge wish they were never reborn!" @@ -1325,7 +1321,7 @@ public: // say random text me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE); - DoScriptText(RAND(SAY_RECRUIT_1, SAY_RECRUIT_2, SAY_RECRUIT_3), me); + Talk(SAY_RECRUIT); m_uiTimer = 3000; m_uiPhase = 2; break; 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); } |