diff options
author | slg <none@none> | 2008-10-27 15:17:06 -0500 |
---|---|---|
committer | slg <none@none> | 2008-10-27 15:17:06 -0500 |
commit | 1b820f93ebadc6f253a0b1baa958abe3ab482e2d (patch) | |
tree | dfa777ab8f6d6575e080c0c90d3ea4fc1a5fc5cc | |
parent | bbd5c8fd403408297f094c1634e0a28b5312902c (diff) |
[svn] More C++ scripts converted to use script_texts.
- Blackwing Lair
- Black Morass
- Old Hillsbrad
source: ScriptDev2
--HG--
branch : trunk
15 files changed, 406 insertions, 435 deletions
diff --git a/sql/updates/123_world.sql b/sql/trinityscript_script_texts.sql index afb2a23d15e..bb29f84b025 100644 --- a/sql/updates/123_world.sql +++ b/sql/trinityscript_script_texts.sql @@ -1,5 +1,5 @@ --
--- trinity_script_texts.sql Contains data for table `script_texts` mainly used in C++ parts.
+-- trinityscript_script_texts.sql Contains data for table `script_texts` mainly used in C++ parts.
-- valid entries for table are between -1000000 and -1999999
--
@@ -49,6 +49,27 @@ INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`, -- -1 249 000 ONYXIA'S LAIR
-- -1 269 000 OPENING OF THE DARK PORTAL (BLACK MORASS)
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1269000,'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 ...',10442,1,0,'temporus SAY_ENTER'),
+(-1269001,'So be it ... you have been warned.',10444,1,0,'temporus SAY_AGGRO'),
+(-1269002,'Time... sands of time is run out for you.',10443,1,0,'temporus SAY_BANISH'),
+(-1269003,'You should have left when you had the chance.',10445,1,0,'temporus SAY_SLAY1'),
+(-1269004,'Your days are done.',10446,1,0,'temporus SAY_SLAY2'),
+(-1269005,'My death means ... little.',10447,1,0,'temporus SAY_DEATH'),
+
+(-1269006,'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 ...',10412,1,0,'chrono_lord_deja SAY_ENTER'),
+(-1269007,'If you will not cease this foolish quest, then you will die!',10414,1,0,'chrono_lord_deja SAY_AGGRO'),
+(-1269008,'You have outstayed your welcome, Timekeeper. Begone!',10413,1,0,'chrono_lord_deja SAY_BANISH'),
+(-1269009,'I told you it was a fool\'s quest!',10415,1,0,'chrono_lord_deja SAY_SLAY1'),
+(-1269010,'Leaving so soon?',10416,1,0,'chrono_lord_deja SAY_SLAY2'),
+(-1269011,'Time ... is on our side.',10417,1,0,'chrono_lord_deja SAY_DEATH'),
+
+(-1269012,'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!',10400,1,0,'aeonus SAY_ENTER'),
+(-1269013,'Let us see what fate lays in store...',10402,1,0,'aeonus SAY_AGGRO'),
+(-1269014,'Your time is up, slave of the past!',10401,1,0,'aeonus SAY_BANISH'),
+(-1269015,'One less obstacle in our way!',10403,1,0,'aeonus SAY_SLAY1'),
+(-1269016,'No one can stop us! No one!',10404,1,0,'aeonus SAY_SLAY2'),
+(-1269017,'It is only a matter...of time.',10405,1,0,'aeonus SAY_DEATH');
-- -1 289 000 SCHOLOMANCE
@@ -65,6 +86,43 @@ INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`, -- -1 429 000 DIRE MAUL
-- -1 469 000 BLACKWING LAIR
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1469000,'None of your kind should be here! You\'ve doomed only yourselves!',8286,1,0,'broodlord SAY_AGGRO'),
+(-1469001,'Clever Mortals but I am not so easily lured away from my sanctum!',8287,1,0,'broodlord SAY_LEASH'),
+
+(-1469002,'goes into a killing frenzy!',0,2,0,'chromaggus EMOTE_FRENZY'),
+(-1469003,'flinches as its skin shimmers.',0,2,0,'chromaggus EMOTE_SHIMMER'),
+
+(-1469004,'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...',0,0,0,'victor_nefarius SAY_GAMESBEGIN_1'),
+(-1469005,'Let the games begin!',8280,1,0,'victor_nefarius SAY_GAMESBEGIN_2'),
+(-1469006,'Ah, the heroes. You are persistent, aren\'t you. Your allied attempted to match his power against mine, and had to pay the price. Now he shall serve me, by slaughtering you. Get up little red wyrm and destroy them!',8279,1,0,'victor_nefarius SAY_VAEL_INTRO'),
+
+(-1469007,'Well done, my minions. The mortals\' courage begins to wane! Now, let\'s see how they contend with the true Lord of Blackrock Spire!',8288,1,0,'nefarian SAY_AGGRO'),
+(-1469008,'Enough! Now you vermin shall feel the force of my birthright, the fury of the earth itself.',8289,1,0,'nefarian SAY_XHEALTH'),
+(-1469009,'Burn, you wretches! Burn!',8290,1,0,'nefarian SAY_SHADOWFLAME'),
+(-1469010,'Impossible! Rise my minions! Serve your master once more!',8291,1,0,'nefarian SAY_RAISE_SKELETONS'),
+(-1469011,'Worthless $N! Your friends will join you soon enough!',8293,1,0,'nefarian SAY_SLAY'),
+(-1469012,'This cannot be! I am the Master here! You mortals are nothing to my kind! DO YOU HEAR? NOTHING!',8292,1,0,'nefarian SAY_DEATH'),
+(-1469013,'Mages too? You should be more careful when you play with magic...',0,1,0,'nefarian SAY_MAGE'),
+(-1469014,'Warriors, I know you can hit harder than that! Let\'s see it!',0,1,0,'nefarian SAY_WARRIOR'),
+(-1469015,'Druids and your silly shapeshifting. Let\'s see it in action!',0,1,0,'nefarian SAY_DRUID'),
+(-1469016,'Priests! If you\'re going to keep healing like that, we might as well make it a little more interesting!',0,1,0,'nefarian SAY_PRIEST'),
+(-1469017,'Paladins, I\'ve heard you have many lives. Show me.',0,1,0,'nefarian SAY_PALADIN'),
+(-1469018,'Shamans, show me what your totems can do!',0,1,0,'nefarian SAY_SHAMAN'),
+(-1469019,'Warlocks, you shouldn\'t be playing with magic you don\'t understand. See what happens?',0,1,0,'nefarian SAY_WARLOCK'),
+(-1469020,'Hunters and your annoying pea-shooters!',0,1,0,'nefarian SAY_HUNTER'),
+(-1469021,'Rogues? Stop hiding and face me!',0,1,0,'nefarian SAY_ROGUE'),
+
+(-1469022,'You\'ll pay for forcing me to do this.',8275,1,0,'razorgore SAY_EGGS_BROKEN1'),
+(-1469023,'Fools! These eggs are more precious than you know.',8276,1,0,'razorgore SAY_EGGS_BROKEN2'),
+(-1469024,'No! Not another one! I\'ll have your heads for this atrocity.',8277,1,0,'razorgore SAY_EGGS_BROKEN3'),
+(-1469025,'If I fall into the abyss I\'ll take all of you mortals with me...',8278,1,0,'razorgore SAY_DEATH'),
+
+(-1469026,'Too late...friends. Nefarius\' corruption has taken hold. I cannot...control myself.',8281,1,0,'vaelastrasz SAY_LINE1'),
+(-1469027,'I beg you Mortals, flee! Flee before I lose all control. The Black Fire rages within my heart. I must release it!',8282,1,0,'vaelastrasz SAY_LINE2'),
+(-1469028,'FLAME! DEATH! DESTRUCTION! COWER MORTALS BEFORE THE WRATH OF LORD....NO! I MUST FIGHT THIS!',8283,1,0,'vaelastrasz SAY_LINE3'),
+(-1469029,'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!',8285,1,0,'vaelastrasz SAY_HALFLIFE'),
+(-1469030,'Forgive me $N, your death only adds to my failure.',8284,1,0,'vaelastrasz SAY_KILLTARGET');
-- -1 509 000 RUINS OF AHN'QIRAJ
@@ -196,6 +254,32 @@ INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`, (-1558009,'This is... where.. I belong...',10518,1,0,'maladaar SAY_DEATH');
-- -1 560 000 ESCAPE FROM DURNHOLDE (OLD HILLSBRAD)
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1560000,'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!',10406,1,0,'skarloc SAY_ENTER'),
+(-1560001,'You\'re a slave. That\'s all you\'ll ever be.',10407,1,0,'skarloc SAY_TAUNT1'),
+(-1560002,'I don\'t know what Blackmoore sees in you. For my money, you\'re just another ignorant savage!',10408,1,0,'skarloc SAY_TAUNT2'),
+(-1560003,'Thrall will never be free!',10409,1,0,'skarloc SAY_SLAY1'),
+(-1560004,'Did you really think you would leave here alive?',10410,1,0,'skarloc SAY_SLAY2'),
+(-1560005,'Guards! Urgh..Guards..!',10411,1,0,'skarloc SAY_DEATH'),
+
+(-1560006,'You there, fetch water quickly! Get these flames out before they spread to the rest of the keep! Hurry, damn you!',10428,1,0,'lieutenant_drake SAY_ENTER'),
+(-1560007,'I know what you\'re up to, and I mean to put an end to it, permanently!',10429,1,0,'lieutenant_drake SAY_AGGRO'),
+(-1560008,'No more middling for you.',10432,1,0,'lieutenant_drake SAY_SLAY1'),
+(-1560009,'You will not interfere!',10433,1,0,'lieutenant_drake SAY_SLAY2'),
+(-1560010,'Time to bleed!',10430,1,0,'lieutenant_drake SAY_MORTAL'),
+(-1560011,'Run, you blasted cowards!',10431,1,0,'lieutenant_drake SAY_SHOUT'),
+(-1560012,'Thrall... must not... go free.',10434,1,0,'lieutenant_drake SAY_DEATH'),
+
+(-1560013,'Thrall! Come outside and face your fate!',10418,1,0,'epoch SAY_ENTER1'),
+(-1560014,'Taretha\'s life hangs in the balance. Surely you care for her. Surely you wish to save her...',10419,1,0,'epoch SAY_ENTER2'),
+(-1560015,'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!',10420,1,0,'epoch SAY_ENTER3'),
+(-1560016,'Enough! I will erase your very existence!',10421,1,0,'epoch SAY_AGGRO1'),
+(-1560017,'You cannot fight fate!',10422,1,0,'epoch SAY_AGGRO2'),
+(-1560018,'You are...irrelevant.',10425,1,0,'epoch SAY_SLAY1'),
+(-1560019,'Thrall will remain a slave. Taretha will die. You have failed.',10426,1,0,'epoch SAY_SLAY2'),
+(-1560020,'Not so fast!',10423,1,0,'epoch SAY_BREATH1'),
+(-1560021,'Struggle as much as you like!',10424,1,0,'epoch SAY_BREATH2'),
+(-1560022,'No!...The master... will not... be pleased.',10427,1,0,'epoch SAY_DEATH');
-- -1 564 000 BLACK TEMPLE
diff --git a/sql/trinityscript_script_texts.txt b/sql/updates/123_world_scripts.sql index afb2a23d15e..afb2a23d15e 100644 --- a/sql/trinityscript_script_texts.txt +++ b/sql/updates/123_world_scripts.sql diff --git a/sql/updates/133_world_scripts.sql b/sql/updates/133_world_scripts.sql new file mode 100644 index 00000000000..51a951d463e --- /dev/null +++ b/sql/updates/133_world_scripts.sql @@ -0,0 +1,80 @@ +DELETE FROM `script_texts` WHERE `entry` BETWEEN -1469030 AND -1469000;
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1469000,'None of your kind should be here! You\'ve doomed only yourselves!',8286,1,0,'broodlord SAY_AGGRO'),
+(-1469001,'Clever Mortals but I am not so easily lured away from my sanctum!',8287,1,0,'broodlord SAY_LEASH'),
+(-1469002,'goes into a killing frenzy!',0,2,0,'chromaggus EMOTE_FRENZY'),
+(-1469003,'flinches as its skin shimmers.',0,2,0,'chromaggus EMOTE_SHIMMER'),
+(-1469004,'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...',0,0,0,'victor_nefarius SAY_GAMESBEGIN_1'),
+(-1469005,'Let the games begin!',8280,1,0,'victor_nefarius SAY_GAMESBEGIN_2'),
+(-1469006,'Ah, the heroes. You are persistent, aren\'t you. Your allied attempted to match his power against mine, and had to pay the price. Now he shall serve me, by slaughtering you. Get up little red wyrm and destroy them!',8279,1,0,'victor_nefarius SAY_VAEL_INTRO'),
+(-1469007,'Well done, my minions. The mortals\' courage begins to wane! Now, let\'s see how they contend with the true Lord of Blackrock Spire!',8288,1,0,'nefarian SAY_AGGRO'),
+(-1469008,'Enough! Now you vermin shall feel the force of my birthright, the fury of the earth itself.',8289,1,0,'nefarian SAY_XHEALTH'),
+(-1469009,'Burn, you wretches! Burn!',8290,1,0,'nefarian SAY_SHADOWFLAME'),
+(-1469010,'Impossible! Rise my minions! Serve your master once more!',8291,1,0,'nefarian SAY_RAISE_SKELETONS'),
+(-1469011,'Worthless $N! Your friends will join you soon enough!',8293,1,0,'nefarian SAY_SLAY'),
+(-1469012,'This cannot be! I am the Master here! You mortals are nothing to my kind! DO YOU HEAR? NOTHING!',8292,1,0,'nefarian SAY_DEATH'),
+(-1469013,'Mages too? You should be more careful when you play with magic...',0,1,0,'nefarian SAY_MAGE'),
+(-1469014,'Warriors, I know you can hit harder than that! Let\'s see it!',0,1,0,'nefarian SAY_WARRIOR'),
+(-1469015,'Druids and your silly shapeshifting. Let\'s see it in action!',0,1,0,'nefarian SAY_DRUID'),
+(-1469016,'Priests! If you\'re going to keep healing like that, we might as well make it a little more interesting!',0,1,0,'nefarian SAY_PRIEST'),
+(-1469017,'Paladins, I\'ve heard you have many lives. Show me.',0,1,0,'nefarian SAY_PALADIN'),
+(-1469018,'Shamans, show me what your totems can do!',0,1,0,'nefarian SAY_SHAMAN'),
+(-1469019,'Warlocks, you shouldn\'t be playing with magic you don\'t understand. See what happens?',0,1,0,'nefarian SAY_WARLOCK'),
+(-1469020,'Hunters and your annoying pea-shooters!',0,1,0,'nefarian SAY_HUNTER'),
+(-1469021,'Rogues? Stop hiding and face me!',0,1,0,'nefarian SAY_ROGUE'),
+(-1469022,'You\'ll pay for forcing me to do this.',8275,1,0,'razorgore SAY_EGGS_BROKEN1'),
+(-1469023,'Fools! These eggs are more precious than you know.',8276,1,0,'razorgore SAY_EGGS_BROKEN2'),
+(-1469024,'No! Not another one! I\'ll have your heads for this atrocity.',8277,1,0,'razorgore SAY_EGGS_BROKEN3'),
+(-1469025,'If I fall into the abyss I\'ll take all of you mortals with me...',8278,1,0,'razorgore SAY_DEATH'),
+(-1469026,'Too late...friends. Nefarius\' corruption has taken hold. I cannot...control myself.',8281,1,0,'vaelastrasz SAY_LINE1'),
+(-1469027,'I beg you Mortals, flee! Flee before I lose all control. The Black Fire rages within my heart. I must release it!',8282,1,0,'vaelastrasz SAY_LINE2'),
+(-1469028,'FLAME! DEATH! DESTRUCTION! COWER MORTALS BEFORE THE WRATH OF LORD....NO! I MUST FIGHT THIS!',8283,1,0,'vaelastrasz SAY_LINE3'),
+(-1469029,'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!',8285,1,0,'vaelastrasz SAY_HALFLIFE'),
+(-1469030,'Forgive me $N, your death only adds to my failure.',8284,1,0,'vaelastrasz SAY_KILLTARGET');
+
+DELETE FROM `script_texts` WHERE `entry` BETWEEN -1269017 AND -1269000;
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1269000,'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 ...',10442,1,0,'temporus SAY_ENTER'),
+(-1269001,'So be it ... you have been warned.',10444,1,0,'temporus SAY_AGGRO'),
+(-1269002,'Time... sands of time is run out for you.',10443,1,0,'temporus SAY_BANISH'),
+(-1269003,'You should have left when you had the chance.',10445,1,0,'temporus SAY_SLAY1'),
+(-1269004,'Your days are done.',10446,1,0,'temporus SAY_SLAY2'),
+(-1269005,'My death means ... little.',10447,1,0,'temporus SAY_DEATH'),
+(-1269006,'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 ...',10412,1,0,'chrono_lord_deja SAY_ENTER'),
+(-1269007,'If you will not cease this foolish quest, then you will die!',10414,1,0,'chrono_lord_deja SAY_AGGRO'),
+(-1269008,'You have outstayed your welcome, Timekeeper. Begone!',10413,1,0,'chrono_lord_deja SAY_BANISH'),
+(-1269009,'I told you it was a fool\'s quest!',10415,1,0,'chrono_lord_deja SAY_SLAY1'),
+(-1269010,'Leaving so soon?',10416,1,0,'chrono_lord_deja SAY_SLAY2'),
+(-1269011,'Time ... is on our side.',10417,1,0,'chrono_lord_deja SAY_DEATH'),
+(-1269012,'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!',10400,1,0,'aeonus SAY_ENTER'),
+(-1269013,'Let us see what fate lays in store...',10402,1,0,'aeonus SAY_AGGRO'),
+(-1269014,'Your time is up, slave of the past!',10401,1,0,'aeonus SAY_BANISH'),
+(-1269015,'One less obstacle in our way!',10403,1,0,'aeonus SAY_SLAY1'),
+(-1269016,'No one can stop us! No one!',10404,1,0,'aeonus SAY_SLAY2'),
+(-1269017,'It is only a matter...of time.',10405,1,0,'aeonus SAY_DEATH');
+
+DELETE FROM `script_texts` WHERE `entry` BETWEEN -1560022 AND -1560000;
+INSERT INTO `script_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`) VALUES
+(-1560000,'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!',10406,1,0,'skarloc SAY_ENTER'),
+(-1560001,'You\'re a slave. That\'s all you\'ll ever be.',10407,1,0,'skarloc SAY_TAUNT1'),
+(-1560002,'I don\'t know what Blackmoore sees in you. For my money, you\'re just another ignorant savage!',10408,1,0,'skarloc SAY_TAUNT2'),
+(-1560003,'Thrall will never be free!',10409,1,0,'skarloc SAY_SLAY1'),
+(-1560004,'Did you really think you would leave here alive?',10410,1,0,'skarloc SAY_SLAY2'),
+(-1560005,'Guards! Urgh..Guards..!',10411,1,0,'skarloc SAY_DEATH'),
+(-1560006,'You there, fetch water quickly! Get these flames out before they spread to the rest of the keep! Hurry, damn you!',10428,1,0,'lieutenant_drake SAY_ENTER'),
+(-1560007,'I know what you\'re up to, and I mean to put an end to it, permanently!',10429,1,0,'lieutenant_drake SAY_AGGRO'),
+(-1560008,'No more middling for you.',10432,1,0,'lieutenant_drake SAY_SLAY1'),
+(-1560009,'You will not interfere!',10433,1,0,'lieutenant_drake SAY_SLAY2'),
+(-1560010,'Time to bleed!',10430,1,0,'lieutenant_drake SAY_MORTAL'),
+(-1560011,'Run, you blasted cowards!',10431,1,0,'lieutenant_drake SAY_SHOUT'),
+(-1560012,'Thrall... must not... go free.',10434,1,0,'lieutenant_drake SAY_DEATH'),
+(-1560013,'Thrall! Come outside and face your fate!',10418,1,0,'epoch SAY_ENTER1'),
+(-1560014,'Taretha\'s life hangs in the balance. Surely you care for her. Surely you wish to save her...',10419,1,0,'epoch SAY_ENTER2'),
+(-1560015,'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!',10420,1,0,'epoch SAY_ENTER3'),
+(-1560016,'Enough! I will erase your very existence!',10421,1,0,'epoch SAY_AGGRO1'),
+(-1560017,'You cannot fight fate!',10422,1,0,'epoch SAY_AGGRO2'),
+(-1560018,'You are...irrelevant.',10425,1,0,'epoch SAY_SLAY1'),
+(-1560019,'Thrall will remain a slave. Taretha will die. You have failed.',10426,1,0,'epoch SAY_SLAY2'),
+(-1560020,'Not so fast!',10423,1,0,'epoch SAY_BREATH1'),
+(-1560021,'Struggle as much as you like!',10424,1,0,'epoch SAY_BREATH2'),
+(-1560022,'No!...The master... will not... be pleased.',10427,1,0,'epoch SAY_DEATH');
\ No newline at end of file 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(); } }; |