fix(Scripts/Naxxramas): Add post-Gothik Four Horsemen introduction (#20550)
This commit is contained in:
parent
2c7cf4832e
commit
30f273e593
@ -0,0 +1,13 @@
|
||||
--
|
||||
SET @ZELIEK = 16063;
|
||||
UPDATE `creature_text` SET `Comment` = 'zeliek SAY_ZELI_DIALOG1' WHERE (`CreatureID` = @ZELIEK) AND (`GroupID` = 5);
|
||||
UPDATE `creature_text` SET `Comment` = 'zeliek SAY_ZELI_DIALOG2' WHERE (`CreatureID` = @ZELIEK) AND (`GroupID` = 6);
|
||||
SET @KORTHAZZ = 16064;
|
||||
UPDATE `creature_text` SET `Comment` = 'korthazz SAY_KORT_DIALOG1' WHERE (`CreatureID` = @KORTHAZZ) AND (`GroupID` = 5);
|
||||
UPDATE `creature_text` SET `Comment` = 'korthazz SAY_KORT_DIALOG2' WHERE (`CreatureID` = @KORTHAZZ) AND (`GroupID` = 6);
|
||||
SET @BLAUMEUX = 16065;
|
||||
UPDATE `creature_text` SET `Comment` = 'blaumeux SAY_BLAU_DIALOG1' WHERE (`CreatureID` = @BLAUMEUX) AND (`GroupID` = 5);
|
||||
UPDATE `creature_text` SET `Comment` = 'blaumeux SAY_BLAU_DIALOG2' WHERE (`CreatureID` = @BLAUMEUX) AND (`GroupID` = 6);
|
||||
SET @RIVENDARE = 30549;
|
||||
UPDATE `creature_text` SET `Comment` = 'rivendare SAY_RIVE_DIALOG1' WHERE (`CreatureID` = @RIVENDARE) AND (`GroupID` = 5);
|
||||
UPDATE `creature_text` SET `Comment` = 'rivendare SAY_RIVE_DIALOG2' WHERE (`CreatureID` = @RIVENDARE) AND (`GroupID` = 6);
|
||||
@ -101,7 +101,7 @@ public:
|
||||
_screamTimer = 2 * MINUTE * IN_MILLISECONDS;
|
||||
_hadThaddiusGreet = false;
|
||||
_currentWingTaunt = SAY_FIRST_WING_TAUNT;
|
||||
_horsemanLoaded = 0;
|
||||
_currentHorsemenLine = 0;
|
||||
|
||||
// Achievements
|
||||
abominationsKilled = 0;
|
||||
@ -174,6 +174,7 @@ public:
|
||||
bool _hadThaddiusGreet;
|
||||
EventMap events;
|
||||
uint8 _currentWingTaunt;
|
||||
uint8 _currentHorsemenLine;
|
||||
uint8 _horsemanLoaded;
|
||||
|
||||
// Achievements
|
||||
@ -943,6 +944,7 @@ public:
|
||||
{
|
||||
go->SetGoState(GO_STATE_ACTIVE);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 10s);
|
||||
break;
|
||||
case BOSS_SAPPHIRON:
|
||||
events.ScheduleEvent(EVENT_FROSTWYRM_WATERFALL_DOOR, 5s);
|
||||
@ -1071,6 +1073,52 @@ public:
|
||||
go->SetGoState(GO_STATE_ACTIVE);
|
||||
}
|
||||
break;
|
||||
case EVENT_HORSEMEN_INTRO:
|
||||
switch (_currentHorsemenLine)
|
||||
{
|
||||
case 0: // To arms, ye roustabouts! We've got company!
|
||||
if (Creature* korthazz = instance->GetCreature(_korthazzGUID))
|
||||
korthazz->AI()->Talk(SAY_HORSEMEN_DIALOG1);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 4500ms);
|
||||
break;
|
||||
case 1: // Invaders, cease this foolish venture at once! Turn away while you still can!
|
||||
if (Creature* zeliek = instance->GetCreature(_zeliekGUID))
|
||||
zeliek->AI()->Talk(SAY_HORSEMEN_DIALOG1);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 2: // Come, Zeliek, do not drive them out. Not before we've had our fun!
|
||||
if (Creature* blaumeux = instance->GetCreature(_blaumeuxGUID))
|
||||
blaumeux->AI()->Talk(SAY_HORSEMEN_DIALOG1);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 3: // Enough prattling. Let them come. We shall grind their bones to dust.
|
||||
if (Creature* rivendare = instance->GetCreature(_rivendareGUID))
|
||||
rivendare->AI()->Talk(SAY_HORSEMEN_DIALOG1);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 4: // I do hope they stay alive long enough for me to... introduce myself.
|
||||
if (Creature* blaumeux = instance->GetCreature(_blaumeuxGUID))
|
||||
blaumeux->AI()->Talk(SAY_HORSEMEN_DIALOG2);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 5: // Perhaps they will come to their senses... and run away as fast as they can.
|
||||
if (Creature* zeliek = instance->GetCreature(_zeliekGUID))
|
||||
zeliek->AI()->Talk(SAY_HORSEMEN_DIALOG2);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 6: // I've heard about enough a' yer snivelin'! Shut yer flytrap before I shut it for ye'!
|
||||
if (Creature* korthazz = instance->GetCreature(_korthazzGUID))
|
||||
korthazz->AI()->Talk(SAY_HORSEMEN_DIALOG2);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
case 7: // Conserve your anger. Harness your rage. You will all have outlets for your frustrations soon enough.
|
||||
if (Creature* rivendare = instance->GetCreature(_rivendareGUID))
|
||||
rivendare->AI()->Talk(SAY_HORSEMEN_DIALOG2);
|
||||
events.ScheduleEvent(EVENT_HORSEMEN_INTRO, 6500ms);
|
||||
break;
|
||||
}
|
||||
++_currentHorsemenLine;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -190,14 +190,17 @@ enum NXSays
|
||||
SAY_SAPP_DIALOG5 = 4,
|
||||
SAY_SAPP_DIALOG6 = 20,
|
||||
SAY_CAT_DIED = 5,
|
||||
SAY_FIRST_WING_TAUNT = 16
|
||||
SAY_FIRST_WING_TAUNT = 16,
|
||||
SAY_HORSEMEN_DIALOG1 = 5,
|
||||
SAY_HORSEMEN_DIALOG2 = 6
|
||||
};
|
||||
|
||||
enum NXEvents
|
||||
{
|
||||
EVENT_THADDIUS_SCREAMS = 0,
|
||||
EVENT_KELTHUZAD_WING_TAUNT = 1,
|
||||
EVENT_FROSTWYRM_WATERFALL_DOOR = 2
|
||||
EVENT_FROSTWYRM_WATERFALL_DOOR = 2,
|
||||
EVENT_HORSEMEN_INTRO = 3
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user