Core/Scripting: Move Nightbane text to creature text

This commit is contained in:
Malcrom
2013-01-07 22:44:09 -03:30
parent 0226048686
commit 2a9fc5198b
2 changed files with 36 additions and 22 deletions

View File

@@ -0,0 +1,9 @@
-- Texts for Nightbane
DELETE FROM `creature_text` WHERE `entry`= 17225;
INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES
(17225,0,0, 'An ancient being awakens in the distance...',16,0,100,0,0,0, 'Nightbane - EMOTE_SUMMON'),
(17225,1,0, 'What fools! I shall bring a quick end to your suffering!',14,0,100,0,0,0, 'Nightbane - YELL_AGGRO'),
(17225,2,0, 'Miserable vermin. I shall exterminate you from the air!',14,0,100,0,0,0, 'Nightbane - YELL_FLY_PHASE'),
(17225,3,0, 'Enough! I shall land and crush you myself!',14,0,100,0,0,0, 'Nightbane - YELL_LAND_PHASE'),
(17225,3,1, 'Insects! Let me show you my strength up close!',14,0,100,0,0,0, 'Nightbane - YELL_LAND_PHASE'),
(17225,4,0, 'takes a deep breath.',16,0,100,0,0,0, 'Nightbane - EMOTE_BREATH');

View File

@@ -27,25 +27,30 @@ EndScriptData */
#include "ScriptedCreature.h"
#include "karazhan.h"
//phase 1
#define SPELL_BELLOWING_ROAR 39427
#define SPELL_CHARRED_EARTH 30129
#define SPELL_DISTRACTING_ASH 30130
#define SPELL_SMOLDERING_BREATH 30210
#define SPELL_TAIL_SWEEP 25653
//phase 2
#define SPELL_RAIN_OF_BONES 37098
#define SPELL_SMOKING_BLAST 37057
#define SPELL_FIREBALL_BARRAGE 30282
#define SPELL_SEARING_CINDERS 30127
#define SPELL_SUMMON_SKELETON 30170
enum Spells
{
// phase 1
SPELL_BELLOWING_ROAR = 39427,
SPELL_CHARRED_EARTH = 30129,
SPELL_DISTRACTING_ASH = 30130,
SPELL_SMOLDERING_BREATH = 30210,
SPELL_TAIL_SWEEP = 25653,
// phase 2
SPELL_RAIN_OF_BONES = 37098,
SPELL_SMOKING_BLAST = 37057,
SPELL_FIREBALL_BARRAGE = 30282,
SPELL_SEARING_CINDERS = 30127,
SPELL_SUMMON_SKELETON = 30170
};
#define EMOTE_SUMMON "An ancient being awakens in the distance..."
#define YELL_AGGRO "What fools! I shall bring a quick end to your suffering!"
#define YELL_FLY_PHASE "Miserable vermin. I shall exterminate you from the air!"
#define YELL_LAND_PHASE_1 "Enough! I shall land and crush you myself!"
#define YELL_LAND_PHASE_2 "Insects! Let me show you my strength up close!"
#define EMOTE_BREATH "takes a deep breath."
enum Says
{
EMOTE_SUMMON = 0, // Not used in script
YELL_AGGRO = 1,
YELL_FLY_PHASE = 2,
YELL_LAND_PHASE = 3,
EMOTE_BREATH = 4
};
float IntroWay[8][3] =
{
@@ -161,7 +166,7 @@ public:
instance->SetData(TYPE_NIGHTBANE, IN_PROGRESS);
HandleTerraceDoors(false);
me->MonsterYell(YELL_AGGRO, LANG_UNIVERSAL, 0);
Talk(YELL_AGGRO);
}
void AttackStart(Unit* who)
@@ -205,7 +210,7 @@ public:
{
if (id == 0)
{
me->MonsterTextEmote(EMOTE_BREATH, 0, true);
Talk(EMOTE_BREATH);
Flying = false;
Phase = 2;
return;
@@ -237,7 +242,7 @@ public:
void TakeOff()
{
me->MonsterYell(YELL_FLY_PHASE, LANG_UNIVERSAL, 0);
Talk(YELL_FLY_PHASE);
me->InterruptSpell(CURRENT_GENERIC_SPELL);
me->HandleEmoteCommand(EMOTE_ONESHOT_LIFTOFF);
@@ -403,7 +408,7 @@ public:
if (FlyTimer <= diff) //landing
{
me->MonsterYell(RAND(*YELL_LAND_PHASE_1, *YELL_LAND_PHASE_2), LANG_UNIVERSAL, 0);
Talk(YELL_LAND_PHASE);
me->GetMotionMaster()->Clear(false);
me->GetMotionMaster()->MovePoint(3, IntroWay[3][0], IntroWay[3][1], IntroWay[3][2]);