aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorslg <none@none>2008-10-27 15:17:06 -0500
committerslg <none@none>2008-10-27 15:17:06 -0500
commit1b820f93ebadc6f253a0b1baa958abe3ab482e2d (patch)
treedfa777ab8f6d6575e080c0c90d3ea4fc1a5fc5cc /src
parentbbd5c8fd403408297f094c1634e0a28b5312902c (diff)
[svn] More C++ scripts converted to use script_texts.
- Blackwing Lair - Black Morass - Old Hillsbrad source: ScriptDev2 --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp14
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_chromaggus.cpp44
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_nefarian.cpp87
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_razorgore.cpp15
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_vaelastrasz.cpp43
-rw-r--r--src/bindings/scripts/scripts/zone/blackwing_lair/boss_victor_nefarius.cpp17
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp58
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp57
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp91
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp79
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp81
-rw-r--r--src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp89
12 files changed, 241 insertions, 434 deletions
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp
index 3e2feba5699..0e40276903a 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp
@@ -23,16 +23,14 @@ EndScriptData */
#include "precompiled.h"
+#define SAY_AGGRO -1469000
+#define SAY_LEASH -1469001
+
#define SPELL_CLEAVE 26350
#define SPELL_BLASTWAVE 23331
#define SPELL_MORTALSTRIKE 24573
#define SPELL_KNOCKBACK 25778
-#define SAY_AGGRO "None of your kind should be here! You've doomed only yourselves!"
-#define SAY_LEASH "Clever Mortals but I am not so easily lured away from my sanctum!"
-#define SOUND_AGGRO 8286
-#define SOUND_LEASH 8287
-
struct TRINITY_DLL_DECL boss_broodlordAI : public ScriptedAI
{
boss_broodlordAI(Creature *c) : ScriptedAI(c) {Reset();}
@@ -57,8 +55,7 @@ struct TRINITY_DLL_DECL boss_broodlordAI : public ScriptedAI
void Aggro(Unit *who)
{
- DoYell(SAY_AGGRO, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO);
+ DoScriptText(SAY_AGGRO, m_creature);
DoZoneInCombat();
}
@@ -75,6 +72,7 @@ struct TRINITY_DLL_DECL boss_broodlordAI : public ScriptedAI
float spawndist = m_creature->GetDistance(rx,ry,rz);
if ( spawndist > 250 )
{
+ DoScriptText(SAY_LEASH, m_creature);
EnterEvadeMode();
return;
}
@@ -106,7 +104,7 @@ struct TRINITY_DLL_DECL boss_broodlordAI : public ScriptedAI
{
DoCast(m_creature->getVictim(),SPELL_KNOCKBACK);
//Drop 50% aggro
- if(m_creature->getThreatManager().getThreat(m_creature->getVictim()))
+ if (m_creature->getThreatManager().getThreat(m_creature->getVictim()))
m_creature->getThreatManager().modifyThreatPercent(m_creature->getVictim(),-50);
KnockBack_Timer = 15000 + rand()%15000;
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_chromaggus.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_chromaggus.cpp
index 33a91413ade..ea683bd1a13 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_chromaggus.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_chromaggus.cpp
@@ -23,6 +23,9 @@ EndScriptData */
#include "precompiled.h"
+#define EMOTE_FRENZY -1469002
+#define EMOTE_SHIMMER -1469003
+
//These spells are actually called elemental shield
//What they do is decrease all damage by 75% then they increase
//One school of damage by 1100%
@@ -32,30 +35,24 @@ EndScriptData */
#define SPELL_NATURE_VURNALBILTY 22280
#define SPELL_ARCANE_VURNALBILTY 22281
-#define EMOTE_FRENZY "goes into a killing frenzy!"
-#define EMOTE_SHIMMER "flinches as its skin shimmers"
-
-#define SPELL_INCINERATE 23308 //Incinerate 23308,23309
-#define SPELL_TIMELAPSE 23310 //Time lapse 23310, 23311(old threat mod that was removed in 2.01)
-#define SPELL_CORROSIVEACID 23313 //Corrosive Acid 23313, 23314
-#define SPELL_IGNITEFLESH 23315 //Ignite Flesh 23315,23316
-#define SPELL_FROSTBURN 23187 //Frost burn 23187, 23189
+#define SPELL_INCINERATE 23308 //Incinerate 23308,23309
+#define SPELL_TIMELAPSE 23310 //Time lapse 23310, 23311(old threat mod that was removed in 2.01)
+#define SPELL_CORROSIVEACID 23313 //Corrosive Acid 23313, 23314
+#define SPELL_IGNITEFLESH 23315 //Ignite Flesh 23315,23316
+#define SPELL_FROSTBURN 23187 //Frost burn 23187, 23189
//Brood Affliction 23173 - Scripted Spell that cycles through all targets within 100 yards and has a chance to cast one of the afflictions on them
//Since Scripted spells arn't coded I'll just write a function that does the same thing
+#define SPELL_BROODAF_BLUE 23153 //Blue affliction 23153
+#define SPELL_BROODAF_BLACK 23154 //Black affliction 23154
+#define SPELL_BROODAF_RED 23155 //Red affliction 23155 (23168 on death)
+#define SPELL_BROODAF_BRONZE 23170 //Bronze Affliction 23170
+#define SPELL_BROODAF_GREEN 23169 //Brood Affliction Green 23169
-#define SPELL_BROODAF_BLUE 23153 //Blue affliction 23153
-#define SPELL_BROODAF_BLACK 23154 //Black affliction 23154
-#define SPELL_BROODAF_RED 23155 //Red affliction 23155 (23168 on death)
-#define SPELL_BROODAF_BRONZE 23170 //Bronze Affliction 23170
-#define SPELL_BROODAF_GREEN 23169 //Brood Affliction Green 23169
-
-#define SPELL_CHROMATIC_MUT_1 23174 //Spell cast on player if they get all 5 debuffs
-
-#define SPELL_FRENZY 28371 //The frenzy spell may be wrong
-#define SPELL_ENRAGE 28747
+#define SPELL_CHROMATIC_MUT_1 23174 //Spell cast on player if they get all 5 debuffs
-#define TEMP_MUTATE_WHISPER "[SD2 Debug] You would be mind controlled here!"
+#define SPELL_FRENZY 28371 //The frenzy spell may be wrong
+#define SPELL_ENRAGE 28747
struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
{
@@ -216,7 +213,7 @@ struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
DoCast(m_creature,spell);
CurrentVurln_Spell = spell;
- DoTextEmote(EMOTE_SHIMMER, NULL);
+ DoScriptText(EMOTE_SHIMMER, m_creature);
Shimmer_Timer = 45000;
}else Shimmer_Timer -= diff;
@@ -255,7 +252,7 @@ struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
Unit* pUnit = NULL;
pUnit = Unit::GetUnit((*m_creature), (*i)->getUnitGuid());
- if(pUnit)
+ if (pUnit)
{
//Cast affliction
DoCast(pUnit, SpellAfflict, true);
@@ -276,10 +273,7 @@ struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
//WORKAROUND
if (pUnit->GetTypeId() == TYPEID_PLAYER)
- {
- DoWhisper(TEMP_MUTATE_WHISPER, pUnit);
pUnit->CastSpell(pUnit, 5, false);
- }
}
}
}
@@ -291,7 +285,7 @@ struct TRINITY_DLL_DECL boss_chromaggusAI : public ScriptedAI
if (Frenzy_Timer < diff)
{
DoCast(m_creature,SPELL_FRENZY);
- DoTextEmote(EMOTE_FRENZY,NULL);
+ DoScriptText(EMOTE_FRENZY, m_creature);
Frenzy_Timer = 10000 + (rand() % 5000);
}else Frenzy_Timer -= diff;
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_nefarian.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_nefarian.cpp
index dffd01f171e..b819fde0bd5 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_nefarian.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_nefarian.cpp
@@ -16,30 +16,29 @@
/* ScriptData
SDName: Boss_Nefarian
-SD%Complete: 100
+SD%Complete: 80
SDComment: Some issues with class calls effecting more than one class
SDCategory: Blackwing Lair
EndScriptData */
#include "precompiled.h"
-#define SAY_AGGRO "Well done, my minions. The mortals' courage begins to wane! Now, let's see how they contend with the true Lord of Blackrock Spire!"
-#define SAY_DEATH "This cannot be! I am the Master here! You mortals are nothing to my kind! DO YOU HEAR? NOTHING!"
-#define SAY_RAISE_SKELETONS "Impossible! Rise my minions! Serve your master once more!"
-#define SAY_SHADOWFLAME "Burn, you wretches! Burn!"
-#define SAY_SLAY "Worthless $N! Your friends will join you soon enough!"
-#define SAY_XHEALTH "Enough! Now you vermin shall feel the force of my birthright, the fury of the earth itself."
-#define SAY_GAMESBEGIN "Let the games begin!"
-#define SAY_START "<unknown>"
-
-#define SOUND_AGGRO 8288
-#define SOUND_DEATH 8292
-#define SOUND_RAISE_SKELETONS 8291
-#define SOUND_SHADOWFLAME 8290
-#define SOUND_SLAY 8293
-#define SOUND_XHEALTH 8289
-#define SOUND_GAMESBEGIN 8279
-#define SOUND_START 8280
+#define SAY_AGGRO -1469007
+#define SAY_XHEALTH -1469008
+#define SAY_SHADOWFLAME -1469009
+#define SAY_RAISE_SKELETONS -1469010
+#define SAY_SLAY -1469011
+#define SAY_DEATH -1469012
+
+#define SAY_MAGE -1469013
+#define SAY_WARRIOR -1469014
+#define SAY_DRUID -1469015
+#define SAY_PRIEST -1469016
+#define SAY_PALADIN -1469017
+#define SAY_SHAMAN -1469018
+#define SAY_WARLOCK -1469019
+#define SAY_HUNTER -1469020
+#define SAY_ROGUE -1469021
#define SPELL_SHADOWFLAME_INITIAL 22972
#define SPELL_SHADOWFLAME 22539
@@ -59,16 +58,6 @@ EndScriptData */
#define SPELL_HUNTER 23436 //bow broke
#define SPELL_ROGUE 23414 //Paralise
-#define SAY_MAGE "Mages too? You should be more careful when you play with magic..."
-#define SAY_WARRIOR "Warriors, I know you can hit harder than that! Let's see it!"
-#define SAY_DRUID "Druids and your silly shapeshifting. Let's see it in action!"
-#define SAY_PRIEST "Priests! If you're going to keep healing like that, we might as well make it a little more interesting!"
-#define SAY_PALADIN "Paladins, I've heard you have many lives. Show me."
-#define SAY_SHAMAN "Shamans, show me what your totems can do!"
-#define SAY_WARLOCK "Warlocks, you shouldn't be playing with magic you don't understand. See what happens?"
-#define SAY_HUNTER "Hunters and your annoying pea-shooters!"
-#define SAY_ROGUE "Rogues? Stop hiding and face me!"
-
struct TRINITY_DLL_DECL boss_nefarianAI : public ScriptedAI
{
boss_nefarianAI(Creature *c) : ScriptedAI(c) {Reset();}
@@ -100,32 +89,21 @@ struct TRINITY_DLL_DECL boss_nefarianAI : public ScriptedAI
if (rand()%5)
return;
- DoYell(SAY_SLAY,LANG_UNIVERSAL,Victim);
- DoPlaySoundToSet(m_creature, SOUND_SLAY);
+ DoScriptText(SAY_SLAY, m_creature, Victim);
}
void JustDied(Unit* Killer)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
}
void Aggro(Unit *who)
{
switch (rand()%3)
{
- case 0:
- DoYell(SAY_XHEALTH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_XHEALTH);
- break;
- case 1:
- DoYell(SAY_AGGRO,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_AGGRO);
- break;
- case 2:
- DoYell(SAY_SHADOWFLAME,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_SHADOWFLAME);
- break;
+ case 0: DoScriptText(SAY_XHEALTH, m_creature); break;
+ case 1: DoScriptText(SAY_AGGRO, m_creature); break;
+ case 2: DoScriptText(SAY_SHADOWFLAME, m_creature); break;
}
DoCast(who,SPELL_SHADOWFLAME_INITIAL);
@@ -184,39 +162,39 @@ struct TRINITY_DLL_DECL boss_nefarianAI : public ScriptedAI
switch (rand()%9)
{
case 0:
- DoYell(SAY_MAGE,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_MAGE, m_creature);
DoCast(m_creature,SPELL_MAGE);
break;
case 1:
- DoYell(SAY_WARRIOR,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_WARRIOR, m_creature);
DoCast(m_creature,SPELL_WARRIOR);
break;
case 2:
- DoYell(SAY_DRUID,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_DRUID, m_creature);
DoCast(m_creature,SPELL_DRUID);
break;
case 3:
- DoYell(SAY_PRIEST,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_PRIEST, m_creature);
DoCast(m_creature,SPELL_PRIEST);
break;
case 4:
- DoYell(SAY_PALADIN,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_PALADIN, m_creature);
DoCast(m_creature,SPELL_PALADIN);
break;
case 5:
- DoYell(SAY_SHAMAN,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_SHAMAN, m_creature);
DoCast(m_creature,SPELL_SHAMAN);
break;
case 6:
- DoYell(SAY_WARLOCK,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_WARLOCK, m_creature);
DoCast(m_creature,SPELL_WARLOCK);
break;
case 7:
- DoYell(SAY_HUNTER,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_HUNTER, m_creature);
DoCast(m_creature,SPELL_HUNTER);
break;
case 8:
- DoYell(SAY_ROGUE,LANG_UNIVERSAL,NULL);
+ DoScriptText(SAY_ROGUE, m_creature);
DoCast(m_creature,SPELL_ROGUE);
break;
}
@@ -228,8 +206,7 @@ struct TRINITY_DLL_DECL boss_nefarianAI : public ScriptedAI
if (!Phase3 && (m_creature->GetHealth()*100 / m_creature->GetMaxHealth()) < 20)
{
Phase3 = true;
- DoYell(SAY_RAISE_SKELETONS,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_RAISE_SKELETONS);
+ DoScriptText(SAY_RAISE_SKELETONS, m_creature);
}
DoMeleeAttackIfReady();
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_razorgore.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_razorgore.cpp
index 305910aefa6..bf76a08897f 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_razorgore.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_razorgore.cpp
@@ -17,7 +17,7 @@
/* ScriptData
SDName: Boss_Razorgore
SD%Complete: 50
-SDComment: Needs additional review. Phase 1 NYI
+SDComment: Needs additional review. Phase 1 NYI (Grethok the Controller)
SDCategory: Blackwing Lair
EndScriptData */
@@ -25,10 +25,10 @@ EndScriptData */
//Razorgore Phase 2 Script
-#define SAY_NPC_DEATH "If I fall into the abyss I'll take all of you mortals with me..."
-#define SOUND_NPC_DEATH 8278
-#define SAY_EGGS_BREAK3 "No! Not another one! I'll have your heads for this atrocity."
-#define SOUND_EGGS_BREAK3 8277
+#define SAY_EGGS_BROKEN1 -1469022
+#define SAY_EGGS_BROKEN2 -1469023
+#define SAY_EGGS_BROKEN3 -1469024
+#define SAY_DEATH -1469025
#define SPELL_CLEAVE 22540
#define SPELL_WARSTOMP 24375
@@ -60,6 +60,11 @@ struct TRINITY_DLL_DECL boss_razorgoreAI : public ScriptedAI
DoZoneInCombat();
}
+ void JustDied(Unit* Killer)
+ {
+ DoScriptText(SAY_DEATH, m_creature);
+ }
+
void UpdateAI(const uint32 diff)
{
if (!m_creature->SelectHostilTarget() || !m_creature->getVictim() )
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_vaelastrasz.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_vaelastrasz.cpp
index c00b3c2f9a2..05e4b39af7d 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_vaelastrasz.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_vaelastrasz.cpp
@@ -23,6 +23,14 @@ EndScriptData */
#include "precompiled.h"
+#define SAY_LINE1 -1469026
+#define SAY_LINE2 -1469027
+#define SAY_LINE3 -1469028
+#define SAY_HALFLIFE -1469029
+#define SAY_KILLTARGET -1469030
+
+#define GOSSIP_ITEM "Start Event <Needs Gossip Text>"
+
#define SPELL_ESSENCEOFTHERED 23513
#define SPELL_FLAMEBREATH 23461
#define SPELL_FIRENOVA 23462
@@ -30,23 +38,6 @@ EndScriptData */
#define SPELL_BURNINGADRENALINE 23620
#define SPELL_CLEAVE 20684 //Chain cleave is most likely named something different and contains a dummy effect
-#define SAY_LINE1 "Too late...friends. Nefarius' corruption has taken hold. I cannot...control myself. "
-#define SOUND_LINE1 8281
-
-#define SAY_LINE2 "I beg you Mortals, flee! Flee before I lose all control. The Black Fire rages within my heart. I must release it!"
-#define SOUND_LINE2 8282
-
-#define SAY_LINE3 "FLAME! DEATH! DESTRUCTION! COWER MORTALS BEFORE THE WRATH OF LORD....NO! I MUST FIGHT THIS!"
-#define SOUND_LINE3 8283
-
-#define SAY_HALFLIFE "Nefarius' hate has made me stronger than ever before. You should have fled, while you could, mortals! The fury of Blackrock courses through my veins! "
-#define SOUND_HALFLIFE 8285
-
-#define SAY_KILLTARGET "Forgive me $N, your death only adds to my failure."
-#define SOUND_KILLTARGET 8284
-
-#define GOSSIP_ITEM "Start Event <Needs Gossip Text>"
-
struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
{
boss_vaelAI(Creature *c) : ScriptedAI(c)
@@ -93,8 +84,8 @@ struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
PlayerGUID = target->GetGUID();
//10 seconds
- DoYell(SAY_LINE1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_LINE1);
+ DoScriptText(SAY_LINE1, m_creature);
+
SpeachTimer = 10000;
SpeachNum = 0;
DoingSpeach = true;
@@ -105,8 +96,7 @@ struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
if (rand()%5)
return;
- DoYell(SAY_KILLTARGET,LANG_UNIVERSAL,victim);
- DoPlaySoundToSet(m_creature,SOUND_KILLTARGET);
+ DoScriptText(SAY_KILLTARGET, m_creature, victim);
}
void Aggro(Unit *who)
@@ -126,15 +116,13 @@ struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
{
case 0:
//16 seconds till next line
- DoYell(SAY_LINE2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_LINE2);
+ DoScriptText(SAY_LINE2, m_creature);
SpeachTimer = 16000;
SpeachNum++;
break;
case 1:
//This one is actually 16 seconds but we only go to 10 seconds because he starts attacking after he says "I must fight this!"
- DoYell(SAY_LINE3,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_LINE3);
+ DoScriptText(SAY_LINE3, m_creature);
SpeachTimer = 10000;
SpeachNum++;
break;
@@ -160,9 +148,7 @@ struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
// Yell if hp lower than 15%
if (m_creature->GetHealth()*100 / m_creature->GetMaxHealth() < 15 && !HasYelled)
{
- //Say our dialog
- DoYell(SAY_HALFLIFE,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_HALFLIFE);
+ DoScriptText(SAY_HALFLIFE, m_creature);
HasYelled = true;
}
@@ -205,7 +191,6 @@ struct TRINITY_DLL_DECL boss_vaelAI : public ScriptedAI
{
// have the victim cast the spell on himself otherwise the third effect aura will be applied
// to Vael instead of the player
-
m_creature->getVictim()->CastSpell(m_creature->getVictim(),SPELL_BURNINGADRENALINE,1);
BurningAdrenalineTank_Timer = 45000;
diff --git a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_victor_nefarius.cpp b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_victor_nefarius.cpp
index 0063f070e24..c9e92c7b75f 100644
--- a/src/bindings/scripts/scripts/zone/blackwing_lair/boss_victor_nefarius.cpp
+++ b/src/bindings/scripts/scripts/zone/blackwing_lair/boss_victor_nefarius.cpp
@@ -23,12 +23,9 @@ EndScriptData */
#include "precompiled.h"
-#define SAY_GAMESBEGIN_1 "In this world where time is your enemy, it is my greatest ally. This grand game of life that you think you play in fact plays you. To that I say..."
-#define SAY_GAMESBEGIN_2 "Let the games begin!"
-#define SAY_VAEL_INTRO "<unknown>"
-
-#define SOUND_GAMESBEGIN 8280
-#define SOUND_VAEL_INTRO 8279
+#define SAY_GAMESBEGIN_1 -1469004
+#define SAY_GAMESBEGIN_2 -1469005
+#define SAY_VAEL_INTRO -1469006 //when he corrupts Vaelastrasz
#define GOSSIP_ITEM_1 "I've made no mistakes."
#define GOSSIP_ITEM_2 "You have lost your mind, Nefarius. You speak in riddles."
@@ -41,7 +38,6 @@ EndScriptData */
#define CREATURE_BLACK_DRAKANOID 14265
#define CREATURE_CHROMATIC_DRAKANOID 14302
-
#define CREATURE_NEFARIAN 11583
#define ADD_X1 -7591.151855
@@ -191,8 +187,7 @@ struct TRINITY_DLL_DECL boss_victor_nefariusAI : public ScriptedAI
void BeginEvent(Player* target)
{
- DoYell(SAY_GAMESBEGIN_2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature,SOUND_GAMESBEGIN);
+ DoScriptText(SAY_GAMESBEGIN_2, m_creature);
//Trinity::Singleton<MapManager>::Instance().GetMap(m_creature->GetMapId(), m_creature)->GetPlayers().begin();
/*
@@ -326,7 +321,7 @@ struct TRINITY_DLL_DECL boss_victor_nefariusAI : public ScriptedAI
Nefarian->setFaction(103);
NefarianGUID = Nefarian->GetGUID();
}
- else DoYell("UNABLE TO SPAWN NEF PROPERLY",LANG_UNIVERSAL,NULL);
+ else error_log("SD2: Blackwing Lair: Unable to spawn nefarian properly.");
}
AddSpawnTimer = 4000;
@@ -379,7 +374,7 @@ bool GossipSelect_boss_victor_nefarius(Player *player, Creature *_Creature, uint
break;
case GOSSIP_ACTION_INFO_DEF+3:
player->CLOSE_GOSSIP_MENU();
- _Creature->MonsterSay(SAY_GAMESBEGIN_1,LANG_UNIVERSAL,0);
+ DoScriptText(SAY_GAMESBEGIN_1, _Creature);
((boss_victor_nefariusAI*)_Creature->AI())->BeginEvent(player);
break;
}
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp
index 91f05eadc3c..f6dd7a167ff 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp
@@ -16,30 +16,25 @@
/* ScriptData
SDName: Boss_Aeonus
-SD%Complete: 100
-SDComment:
+SD%Complete: 80
+SDComment: Some spells not implemented
SDCategory: Caverns of Time, The Dark Portal
EndScriptData */
#include "precompiled.h"
-#define SAND_BREATH 31478
-#define TIME_STOP 31422
-#define FRENZY 19812
+#define SAY_ENTER -1269012
+#define SAY_AGGRO -1269013
+#define SAY_BANISH -1269014
+#define SAY_SLAY1 -1269015
+#define SAY_SLAY2 -1269016
+#define SAY_DEATH -1269017
-#define SAY_ENTER "The time has come to shatter this clockwork universe forever! Let us no longer be slaves of the hourglass! I warn you: those who do not embrace the greater path shall become victims of its passing!"
-#define SAY_AGGRO "Let us see what fate lays in store..."
-#define SAY_BANISH "Your time is up, slave of the past!"
-#define SAY_SLAY1 "One less obstacle in our way!"
-#define SAY_SLAY2 "No one can stop us! No one!"
-#define SAY_DEATH "It is only a matter...of time."
-
-#define SOUND_ENTER 10400
-#define SOUND_AGGRO 10402
-#define SOUND_BANISH 10401
-#define SOUND_SLAY1 10403
-#define SOUND_SLAY2 10404
-#define SOUND_DEATH 10405
+#define SPELL_CLEAVE 40504
+#define SPELL_TIME_STOP 31422
+#define SPELL_ENRAGE 37605
+#define SPELL_SAND_BREATH 31473
+#define H_SPELL_SAND_BREATH 39049
struct TRINITY_DLL_DECL boss_aeonusAI : public ScriptedAI
{
@@ -58,30 +53,20 @@ struct TRINITY_DLL_DECL boss_aeonusAI : public ScriptedAI
void Aggro(Unit *who)
{
- DoYell(SAY_AGGRO,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO);
+ DoScriptText(SAY_AGGRO, m_creature);
}
void JustDied(Unit *victim)
{
- //Just Died
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
}
void KilledUnit(Unit *victim)
{
- //Killed Unit
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
@@ -97,24 +82,23 @@ struct TRINITY_DLL_DECL boss_aeonusAI : public ScriptedAI
Unit* target = NULL;
target = m_creature->getVictim();
if (target)
- DoCast(target, SAND_BREATH);
+ DoCast(target, SPELL_SAND_BREATH);
SandBreath_Timer = 30000;
}else SandBreath_Timer -= diff;
//Time Stop
if (TimeStop_Timer < diff)
{
- DoYell(SAY_BANISH, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_BANISH);
+ DoScriptText(SAY_BANISH, m_creature);
- DoCast(m_creature->getVictim(), TIME_STOP);
+ DoCast(m_creature->getVictim(), SPELL_TIME_STOP);
TimeStop_Timer = 40000;
}else TimeStop_Timer -= diff;
//Frenzy
if (Frenzy_Timer < diff)
{
- DoCast(m_creature, FRENZY);
+ DoCast(m_creature, SPELL_ENRAGE);
Frenzy_Timer = 120000;
}else Frenzy_Timer -= diff;
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp
index 497f916c9c5..b6d00be0889 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp
@@ -16,30 +16,26 @@
/* ScriptData
SDName: Boss_Chrono_Lord_Deja
-SD%Complete: 100
-SDComment:
+SD%Complete: 65
+SDComment: All abilities not implemented
SDCategory: Caverns of Time, The Dark Portal
EndScriptData */
#include "precompiled.h"
-#define ARCANE_BLAST 24857
-#define TIME_LAPSE 31467
-#define MAGNETIC_PULL 28337 //Not Implemented (Heroic mod)
+#define SAY_ENTER -1269006
+#define SAY_AGGRO -1269007
+#define SAY_BANISH -1269008
+#define SAY_SLAY1 -1269009
+#define SAY_SLAY2 -1269010
+#define SAY_DEATH -1269011
-#define SAY_ENTER "Why do you aid the Magus? Just think of how many lives could be saved if the portal is never opened, if the resulting wars could be erased ..."
-#define SAY_AGGRO "If you will not cease this foolish quest, then you will die!"
-#define SAY_BANISH "You have outstayed your welcome, Timekeeper. Begone!"
-#define SAY_SLAY1 "I told you it was a fool's quest!"
-#define SAY_SLAY2 "Leaving so soon?"
-#define SAY_DEATH "Time ... is on our side."
-
-#define SOUND_ENTER 10412
-#define SOUND_AGGRO 10414
-#define SOUND_BANISH 10413
-#define SOUND_SLAY1 10415
-#define SOUND_SLAY2 10416
-#define SOUND_DEATH 10417
+#define SPELL_ARCANE_BLAST 31457
+#define H_SPELL_ARCANE_BLAST 38538
+#define SPELL_ARCANE_DISCHARGE 31472
+#define H_SPELL_ARCANE_DISCHARGE 38539
+#define SPELL_TIME_LAPSE 31467
+#define SPELL_ATTRACTION 38540 //Not Implemented (Heroic mode)
struct TRINITY_DLL_DECL boss_chrono_lord_dejaAI : public ScriptedAI
{
@@ -56,30 +52,21 @@ struct TRINITY_DLL_DECL boss_chrono_lord_dejaAI : public ScriptedAI
void Aggro(Unit *who)
{
- DoYell(SAY_AGGRO, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO);
-
+ DoScriptText(SAY_AGGRO, m_creature);
}
void KilledUnit(Unit *victim)
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
void JustDied(Unit *victim)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
}
void UpdateAI(const uint32 diff)
@@ -91,21 +78,19 @@ struct TRINITY_DLL_DECL boss_chrono_lord_dejaAI : public ScriptedAI
//Arcane Blast
if (ArcaneBlast_Timer < diff)
{
- DoCast(m_creature->getVictim(), ARCANE_BLAST);
+ DoCast(m_creature->getVictim(), SPELL_ARCANE_BLAST);
ArcaneBlast_Timer = 20000+rand()%5000;
}else ArcaneBlast_Timer -= diff;
//Time Lapse
if (TimeLapse_Timer < diff)
{
- DoYell(SAY_BANISH, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_BANISH);
- DoCast(m_creature, TIME_LAPSE);
+ DoScriptText(SAY_BANISH, m_creature);
+ DoCast(m_creature, SPELL_TIME_LAPSE);
TimeLapse_Timer = 15000+rand()%10000;
}else TimeLapse_Timer -= diff;
DoMeleeAttackIfReady();
-
}
};
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp
index d051c06d188..2d66eed17ec 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp
@@ -16,31 +16,25 @@
/* ScriptData
SDName: Boss_Temporus
-SD%Complete: 100
-SDComment:
+SD%Complete: 75
+SDComment: More abilities need to be implemented
SDCategory: Caverns of Time, The Dark Portal
EndScriptData */
#include "precompiled.h"
-#define SPELL_TAUNT 355
-#define SPELL_HASTE 31458
-#define SPELL_MORTAL_WOUND 28467
-#define SPELL_REFLECT 23920 //Not Implemented (Heroic mod)
-
-#define SAY_ENTER "Why do you persist? Surely you can see the futility of it all. It is not too late! You may still leave with your lives ..."
-#define SAY_AGGRO "So be it ... you have been warned."
-#define SAY_BANISH "Time... sands of time is run out for you."
-#define SAY_SLAY1 "You should have left when you had the chance."
-#define SAY_SLAY2 "Your days are done."
-#define SAY_DEATH "My death means ... little."
-
-#define SOUND_ENTER 10442
-#define SOUND_AGGRO 10444
-#define SOUND_BANISH 10443
-#define SOUND_SLAY1 10445
-#define SOUND_SLAY2 10446
-#define SOUND_DEATH 10447
+#define SAY_ENTER -1269000
+#define SAY_AGGRO -1269001
+#define SAY_BANISH -1269002
+#define SAY_SLAY1 -1269003
+#define SAY_SLAY2 -1269004
+#define SAY_DEATH -1269005
+
+#define SPELL_HASTE 31458
+#define SPELL_MORTAL_WOUND 31464
+#define SPELL_WING_BUFFET 31475
+#define H_SPELL_WING_BUFFET 38593
+#define SPELL_REFLECT 38592 //Not Implemented (Heroic mod)
struct TRINITY_DLL_DECL boss_temporusAI : public ScriptedAI
{
@@ -51,35 +45,30 @@ struct TRINITY_DLL_DECL boss_temporusAI : public ScriptedAI
void Reset()
{
+ m_creature->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TAUNT, true);
+ m_creature->ApplySpellImmune(0, IMMUNITY_EFFECT,SPELL_EFFECT_ATTACK_ME, true);
+
Haste_Timer = 20000;
SpellReflection_Timer = 40000;
}
void Aggro(Unit *who)
{
- DoYell(SAY_AGGRO,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO);
+ DoScriptText(SAY_AGGRO, m_creature);
}
void KilledUnit(Unit *victim)
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
void JustDied(Unit *victim)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
}
void MoveInLineOfSight(Unit *who)
@@ -93,8 +82,7 @@ struct TRINITY_DLL_DECL boss_temporusAI : public ScriptedAI
if(((Creature*)who)->GetEntry() == 17918 && m_creature->IsWithinDistInMap(who,20))
{
//This is the wrong yell & sound for despawning time keepers!
- DoYell(SAY_ENTER, LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_ENTER);
+ DoScriptText(SAY_ENTER, m_creature);
m_creature->DealDamage(who, who->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
}
@@ -117,33 +105,26 @@ struct TRINITY_DLL_DECL boss_temporusAI : public ScriptedAI
void UpdateAI(const uint32 diff)
{
//Return since we have no target
- if (!m_creature->SelectHostilTarget() || !m_creature->getVictim() )
+ if (!m_creature->SelectHostilTarget() || !m_creature->getVictim())
return;
- //Check if we have a current target
- if( m_creature->getVictim() && m_creature->isAlive())
+ //Attack Haste
+ if (Haste_Timer < diff)
{
+ DoCast(m_creature, SPELL_HASTE);
+ Haste_Timer = 20000+rand()%5000;
+ }else Haste_Timer -= diff;
- //Attack Haste
- if (Haste_Timer < diff)
- {
- DoCast(m_creature, SPELL_HASTE);
- Haste_Timer = 20000+rand()%5000;
- }else Haste_Timer -= diff;
-
- //Spell Reflection
- if (SpellReflection_Timer < diff)
- {
- DoYell(SAY_BANISH, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_BANISH);
-
- DoCast(m_creature, SPELL_REFLECT);
- SpellReflection_Timer = 40000+rand()%10000;
- }else SpellReflection_Timer -= diff;
+ //Spell Reflection
+ if (SpellReflection_Timer < diff)
+ {
+ DoScriptText(SAY_BANISH, m_creature);
- DoMeleeAttackIfReady();
+ DoCast(m_creature, SPELL_REFLECT);
+ SpellReflection_Timer = 40000+rand()%10000;
+ }else SpellReflection_Timer -= diff;
- }
+ DoMeleeAttackIfReady();
}
};
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp
index 1d4d4397241..19aff777b23 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp
@@ -24,26 +24,19 @@ EndScriptData */
#include "precompiled.h"
#include "def_old_hillsbrad.h"
-#define HOLY_LIGHT 29562
-#define CLEANSE 39078
-#define HAMMER_OF_JUSTICE 13005
-#define HOLY_SHIELD 31904
-#define DEVOTION_AURA 41452
-#define CONSECRATION 41541
-
-#define SAY_ENTER "Thrall! You didn't really think you would escape did you? You and your allies shall answer to Blackmoore - after I've had my fun!"
-#define SAY_AGGRO1 "You're a slave. That's all you'll ever be.'"
-#define SAY_AGGRO2 "I don't know what Blackmoore sees in you. For my money, you're just another ignorant savage!"
-#define SAY_SLAY1 "Thrall will never be free!"
-#define SAY_SLAY2 "Did you really think you would leave here alive?"
-#define SAY_DEATH "Guards! Urgh..Guards..!'"
-
-#define SOUND_ENTER 10406
-#define SOUND_AGGRO1 10407
-#define SOUND_AGGRO2 10408
-#define SOUND_SLAY1 10409
-#define SOUND_SLAY2 10410
-#define SOUND_DEATH 10411
+#define SAY_ENTER -1560000
+#define SAY_TAUNT1 -1560001
+#define SAY_TAUNT2 -1560002
+#define SAY_SLAY1 -1560003
+#define SAY_SLAY2 -1560004
+#define SAY_DEATH -1560005
+
+#define SPELL_HOLY_LIGHT 29427
+#define SPELL_CLEANSE 29380
+#define SPELL_HAMMER_OF_JUSTICE 13005
+#define SPELL_HOLY_SHIELD 31904
+#define SPELL_DEVOTION_AURA 8258
+#define SPELL_CONSECRATION 38385
struct TRINITY_DLL_DECL boss_captain_skarlocAI : public ScriptedAI
{
@@ -68,45 +61,31 @@ struct TRINITY_DLL_DECL boss_captain_skarlocAI : public ScriptedAI
Cleanse_Timer = 10000;
HammerOfJustice_Timer = 60000;
HolyShield_Timer = 240000;
- DevotionAura_Timer = 60000;
+ DevotionAura_Timer = 3000;
Consecration_Timer = 8000;
}
void Aggro(Unit *who)
{
- switch(rand()%2)
- {
- case 0:
- DoYell(SAY_AGGRO1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO1);
- break;
- case 1:
- DoYell(SAY_AGGRO2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO2);
- break;
- }
+ //This is not correct. Should taunt Thrall before engage in combat
+ DoScriptText(SAY_TAUNT1, m_creature);
+ DoScriptText(SAY_TAUNT2, m_creature);
}
void KilledUnit(Unit *victim)
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
void JustDied(Unit *victim)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
- if( pInstance && pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS )
+ DoScriptText(SAY_DEATH, m_creature);
+
+ if (pInstance && pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS)
pInstance->SetData(TYPE_THRALL_PART1, DONE);
}
@@ -119,42 +98,42 @@ struct TRINITY_DLL_DECL boss_captain_skarlocAI : public ScriptedAI
//Holy_Light
if (Holy_Light_Timer < diff)
{
- DoCast(m_creature, HOLY_LIGHT);
+ DoCast(m_creature, SPELL_HOLY_LIGHT);
Holy_Light_Timer = 30000;
}else Holy_Light_Timer -= diff;
//Cleanse
if(Cleanse_Timer < diff)
{
- DoCast(m_creature, CLEANSE);
- Cleanse_Timer = 10000 ;
+ DoCast(m_creature, SPELL_CLEANSE);
+ Cleanse_Timer = 10000;
} else Cleanse_Timer -= diff;
//Hammer of Justice
if (HammerOfJustice_Timer < diff)
{
- DoCast(m_creature->getVictim(), HAMMER_OF_JUSTICE);
+ DoCast(m_creature->getVictim(), SPELL_HAMMER_OF_JUSTICE);
HammerOfJustice_Timer = 60000;
}else HammerOfJustice_Timer -= diff;
//Holy Shield
if (HolyShield_Timer < diff)
{
- DoCast(m_creature,HOLY_SHIELD);
+ DoCast(m_creature, SPELL_HOLY_SHIELD);
HolyShield_Timer = 240000;
}else HolyShield_Timer -= diff;
//Devotion_Aura
if (DevotionAura_Timer < diff)
{
- DoCast(m_creature,DEVOTION_AURA);
+ DoCast(m_creature, SPELL_DEVOTION_AURA);
DevotionAura_Timer = 60000;
}else DevotionAura_Timer -= diff;
//Consecration
if (Consecration_Timer < diff)
{
- //DoCast(m_creature->getVictim(),CONSECRATION);
+ //DoCast(m_creature->getVictim(), SPELL_CONSECRATION);
Consecration_Timer = 8000;
}else Consecration_Timer -= diff;
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp
index ca3d26268fe..734ea93ffbe 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp
@@ -24,30 +24,16 @@ EndScriptData */
#include "precompiled.h"
#include "def_old_hillsbrad.h"
-#define SAY_ENTER1 "Thrall! Come outside and face your fate!"
-#define SOUND_ENTER1 10418
-#define SAY_ENTER2 "Taretha's life hangs in the balance. Surely you care for her. Surely you wish to save her..."
-#define SOUND_ENTER2 10419
-#define SAY_ENTER3 "Ah, there you are. I had hoped to accomplish this with a bit of subtlety, but I suppose direct confrontation was inevitable. Your future, Thrall, must not come to pass and so...you and your troublesome friends must die!"
-#define SOUND_ENTER3 10420
-
-#define SAY_AGGRO1 "Enough! I will erase your very existence!"
-#define SOUND_AGGRO1 10421
-#define SAY_AGGRO2 "You cannot fight fate!"
-#define SOUND_AGGRO2 10422
-
-#define SAY_SLAY1 "You are...irrelevant."
-#define SOUND_SLAY1 10425
-#define SAY_SLAY2 "Thrall will remain a slave. Taretha will die. You have failed."
-#define SOUND_SLAY2 10426
-
-#define SAY_BREATH1 "Not so fast!"
-#define SOUND_BREATH1 10423
-#define SAY_BREATH2 "Struggle as much as you like!"
-#define SOUND_BREATH2 10424
-
-#define SAY_DEATH "No!...The master... will not... be pleased."
-#define SOUND_DEATH 10427
+#define SAY_ENTER1 -1560013
+#define SAY_ENTER2 -1560014
+#define SAY_ENTER3 -1560015
+#define SAY_AGGRO1 -1560016
+#define SAY_AGGRO2 -1560017
+#define SAY_SLAY1 -1560018
+#define SAY_SLAY2 -1560019
+#define SAY_BREATH1 -1560020
+#define SAY_BREATH2 -1560021
+#define SAY_DEATH -1560022
#define SPELL_SAND_BREATH 31914
#define SPELL_IMPENDING_DEATH 31916
@@ -81,14 +67,8 @@ struct TRINITY_DLL_DECL boss_epoch_hunterAI : public ScriptedAI
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_AGGRO1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO1);
- break;
- case 1:
- DoYell(SAY_AGGRO2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO2);
- break;
+ case 0: DoScriptText(SAY_AGGRO1, m_creature); break;
+ case 1: DoScriptText(SAY_AGGRO2, m_creature); break;
}
}
@@ -96,23 +76,16 @@ struct TRINITY_DLL_DECL boss_epoch_hunterAI : public ScriptedAI
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
void JustDied(Unit *victim)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
- if( pInstance && pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS )
+ if (pInstance && pInstance->GetData(TYPE_THRALL_EVENT) == IN_PROGRESS)
pInstance->SetData(TYPE_THRALL_PART4, DONE);
}
@@ -123,42 +96,36 @@ struct TRINITY_DLL_DECL boss_epoch_hunterAI : public ScriptedAI
return;
//Sand Breath
- if( SandBreath_Timer < diff )
+ if (SandBreath_Timer < diff)
{
- if( m_creature->IsNonMeleeSpellCasted(false) )
+ if (m_creature->IsNonMeleeSpellCasted(false))
m_creature->InterruptNonMeleeSpells(false);
DoCast(m_creature->getVictim(),SPELL_SAND_BREATH);
switch(rand()%2)
{
- case 0:
- DoYell(SAY_BREATH1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_BREATH1);
- break;
- case 1:
- DoYell(SAY_BREATH2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_BREATH2);
- break;
+ case 0: DoScriptText(SAY_BREATH1, m_creature); break;
+ case 1: DoScriptText(SAY_BREATH2, m_creature); break;
}
SandBreath_Timer = 25000+rand()%5000;
}else SandBreath_Timer -= diff;
- if( ImpendingDeath_Timer < diff )
+ if (ImpendingDeath_Timer < diff)
{
DoCast(m_creature->getVictim(),SPELL_IMPENDING_DEATH);
ImpendingDeath_Timer = 30000+rand()%5000;
}else ImpendingDeath_Timer -= diff;
- if( WingBuffet_Timer < diff )
+ if (WingBuffet_Timer < diff)
{
- if( Unit *target = SelectUnit(SELECT_TARGET_RANDOM,0) )
+ if (Unit *target = SelectUnit(SELECT_TARGET_RANDOM,0))
DoCast(target,SPELL_WING_BUFFET);
WingBuffet_Timer = 25000+rand()%10000;
}else WingBuffet_Timer -= diff;
- if( Mda_Timer < diff )
+ if (Mda_Timer < diff)
{
DoCast(m_creature,SPELL_MAGIC_DISRUPTION_AURA);
Mda_Timer = 15000;
diff --git a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp
index b3f3a76a8b9..2790d66ef57 100644
--- a/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp
+++ b/src/bindings/scripts/scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp
@@ -56,28 +56,18 @@ bool GOHello_go_barrel_old_hillsbrad(Player *player, GameObject* _GO)
## boss_lieutenant_drake
######*/
-#define WHIRLWIND 40236
-#define FEAR 33789
-#define MORTAL_STRIKE 40220
-#define EXPLODIG_SHOUT 33792
-
-#define SAY_ENTER1 "You there, fetch water quickly!"
-#define SAY_ENTER2 "Get these flames out before they spread to the rest of the keep!"
-#define SAY_ENTER3 "Hurry, damn you!"
-#define SAY_AGGRO "I know what you're up to, and I mean to put an end to it, permanently!"
-#define SAY_SLAY1 "No more middling for you."
-#define SAY_SLAY2 "You will not interfere!"
-#define SAY_MORTAL "Time to bleed!"
-#define SAY_SHOUT "Run, you blasted cowards!"
-#define SAY_DEATH "Thrall... must not... go free."
-
-#define SOUND_ENTER 10428
-#define SOUND_AGGRO 10429
-#define SOUND_SLAY1 10432
-#define SOUND_SLAY2 10433
-#define SOUND_MORTAL 10430
-#define SOUND_SHOUT 10431
-#define SOUND_DEATH 10434
+#define SAY_ENTER -1560006
+#define SAY_AGGRO -1560007
+#define SAY_SLAY1 -1560008
+#define SAY_SLAY2 -1560009
+#define SAY_MORTAL -1560010
+#define SAY_SHOUT -1560011
+#define SAY_DEATH -1560012
+
+#define SPELL_WHIRLWIND 31909
+#define SPELL_HAMSTRING 9080
+#define SPELL_MORTAL_STRIKE 31911
+#define SPELL_FRIGHTENING_SHOUT 33789
struct Location
{
@@ -135,92 +125,59 @@ struct TRINITY_DLL_DECL boss_lieutenant_drakeAI : public ScriptedAI
void Aggro(Unit *who)
{
- DoYell(SAY_AGGRO,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_AGGRO);
+ DoScriptText(SAY_AGGRO, m_creature);
}
void KilledUnit(Unit *victim)
{
switch(rand()%2)
{
- case 0:
- DoYell(SAY_SLAY1,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY1);
- break;
- case 1:
- DoYell(SAY_SLAY2,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_SLAY2);
- break;
+ case 0: DoScriptText(SAY_SLAY1, m_creature); break;
+ case 1: DoScriptText(SAY_SLAY2, m_creature); break;
}
}
void JustDied(Unit *victim)
{
- DoYell(SAY_DEATH,LANG_UNIVERSAL,NULL);
- DoPlaySoundToSet(m_creature, SOUND_DEATH);
+ DoScriptText(SAY_DEATH, m_creature);
}
void UpdateAI(const uint32 diff)
{
//TODO: make this work
- if( CanPatrol && wpId == 0 )
+ if (CanPatrol && wpId == 0)
{
m_creature->GetMotionMaster()->MovePoint(DrakeWP[0].wpId, DrakeWP[0].x, DrakeWP[0].y, DrakeWP[0].z);
wpId++;
}
//Return since we have no target
- if (!m_creature->SelectHostilTarget() || !m_creature->getVictim() )
+ if (!m_creature->SelectHostilTarget() || !m_creature->getVictim())
return;
//Whirlwind
if (Whirlwind_Timer < diff)
{
- DoCast(m_creature->getVictim(), WHIRLWIND);
-
+ DoCast(m_creature->getVictim(), SPELL_WHIRLWIND);
Whirlwind_Timer = 20000+rand()%5000;
}else Whirlwind_Timer -= diff;
//Fear
if (Fear_Timer < diff)
{
- Unit* target = NULL;
- target = SelectUnit(SELECT_TARGET_RANDOM, 0);
- if (target)
- DoCast(target, FEAR);
-
+ DoScriptText(SAY_SHOUT, m_creature);
+ DoCast(m_creature->getVictim(), SPELL_FRIGHTENING_SHOUT);
Fear_Timer = 30000+rand()%10000;
}else Fear_Timer -= diff;
//Mortal Strike
if (MortalStrike_Timer < diff)
{
- DoYell(SAY_MORTAL, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_MORTAL);
-
- DoCast(m_creature->getVictim(), MORTAL_STRIKE);
-
+ DoScriptText(SAY_MORTAL, m_creature);
+ DoCast(m_creature->getVictim(), SPELL_MORTAL_STRIKE);
MortalStrike_Timer = 45000+rand()%5000;
}else MortalStrike_Timer -= diff;
- /*
- //This only enabled on heroic?
- //Exploding Shout
- if (m_creature->IsHeroicCreature())
- {
- if (ExplodingShout_Timer < diff)
- {
- Unit* target = NULL;
- target = SelectUnit(SELECT_TARGET_RANDOM,0);
- if (target)
- DoYell(SAY_SHOUT, LANG_UNIVERSAL, NULL);
- DoPlaySoundToSet(m_creature, SOUND_SHOUT);
- DoCast(target,EXPLODING_SHOUT);
- ExplodingShout_Timer = 25000+rand()%5000;
- }else ExplodingShout_Timer -= diff;
- }
- */
-
DoMeleeAttackIfReady();
}
};