mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-22 05:06:24 +00:00
fix(Script/ToC5): Remove hardcoded text(s) and some minor adjustments. (#15046)
* remove hardcode + fix db incorrect duplicates * cs * cs2 * dual wield google translate (fix zhCN locale) * doxygen todo * ///
This commit is contained in:
@@ -85,8 +85,6 @@ enum PaletressEvents
|
||||
EVENT_SPELL_WAKING_NIGHTMARE,
|
||||
};
|
||||
|
||||
#define TEXT_RADIATE "Eadric the Pure begins to radiate light. Shield your eyes!"
|
||||
|
||||
class boss_eadric : public CreatureScript
|
||||
{
|
||||
public:
|
||||
@@ -119,10 +117,7 @@ public:
|
||||
{
|
||||
if( who->GetTypeId() == TYPEID_PLAYER )
|
||||
{
|
||||
if( urand(0, 1) )
|
||||
Talk(TEXT_EADRIC_SLAIN_1);
|
||||
else
|
||||
Talk(TEXT_EADRIC_SLAIN_2);
|
||||
Talk(SAY_EADRIC_KILL_PLAYER);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -131,7 +126,7 @@ public:
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_SPELL_RADIANCE, 16000);
|
||||
events.ScheduleEvent(EVENT_SPELL_HAMMER_RIGHTEOUS, 25000);
|
||||
Talk(TEXT_EADRIC_AGGRO);
|
||||
Talk(SAY_EADRIC_AGGRO);
|
||||
me->CastSpell(me, SPELL_VENGEANCE, false);
|
||||
if( pInstance )
|
||||
pInstance->SetData(BOSS_ARGENT_CHALLENGE, IN_PROGRESS);
|
||||
@@ -154,7 +149,7 @@ public:
|
||||
me->GetMap()->UpdateEncounterState(ENCOUNTER_CREDIT_CAST_SPELL, 68574, me); // paletress' spell credits encounter, but shouldn't credit achievements
|
||||
me->SetFaction(FACTION_FRIENDLY);
|
||||
events.Reset();
|
||||
Talk(TEXT_EADRIC_DEATH);
|
||||
Talk(SAY_EADRIC_DEFEATED);
|
||||
me->GetThreatMgr().clearReferences();
|
||||
me->SetRegeneratingHealth(false);
|
||||
_EnterEvadeMode();
|
||||
@@ -182,16 +177,14 @@ public:
|
||||
break;
|
||||
case EVENT_SPELL_RADIANCE:
|
||||
me->CastSpell((Unit*)nullptr, SPELL_RADIANCE, false);
|
||||
me->TextEmote(TEXT_RADIATE, nullptr, true);
|
||||
Talk(SAY_EADRIC_EMOTE_RADIANCE);
|
||||
events.Repeat(16s);
|
||||
break;
|
||||
case EVENT_SPELL_HAMMER_RIGHTEOUS:
|
||||
if( Unit* target = SelectTarget(SelectTargetMethod::Random, 0, 55.0f, true) )
|
||||
{
|
||||
char buffer[100];
|
||||
snprintf(buffer, sizeof(buffer), "Eadric the Pure targets %s with the Hammer of the Righteous!", target->GetName().c_str());
|
||||
me->TextEmote(buffer, nullptr, true);
|
||||
Talk(TEXT_EADRIC_HAMMER);
|
||||
Talk(SAY_EADRIC_EMOTE_HAMMER_RIGHTEOUS, target);
|
||||
Talk(SAY_EADRIC_HAMMER_RIGHTEOUS);
|
||||
me->CastSpell(target, SPELL_HAMMER_JUSTICE, true);
|
||||
me->CastSpell(target, SPELL_HAMMER_RIGHTEOUS, false);
|
||||
}
|
||||
@@ -251,10 +244,7 @@ public:
|
||||
{
|
||||
if( who->GetTypeId() == TYPEID_PLAYER )
|
||||
{
|
||||
if( urand(0, 1) )
|
||||
Talk(TEXT_PALETRESS_SLAIN_1);
|
||||
else
|
||||
Talk(TEXT_PALETRESS_SLAIN_2);
|
||||
Talk(SAY_PALETRESS_KILL_PLAYER);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -264,7 +254,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_SPELL_HOLY_FIRE, 9s, 12s);
|
||||
events.ScheduleEvent(EVENT_SPELL_SMITE, 2s, 3s);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
Talk(TEXT_PALETRESS_AGGRO);
|
||||
Talk(SAY_PALETRESS_AGGRO);
|
||||
if( pInstance )
|
||||
pInstance->SetData(BOSS_ARGENT_CHALLENGE, IN_PROGRESS);
|
||||
}
|
||||
@@ -275,7 +265,7 @@ public:
|
||||
{
|
||||
MemoryGUID.Clear();
|
||||
me->RemoveAura(SPELL_SHIELD);
|
||||
Talk(TEXT_PALETRESS_MEMORY_DEFEATED);
|
||||
Talk(SAY_PALETRESS_MEMORY_DEATH);
|
||||
}
|
||||
else if( param == (-1) )
|
||||
{
|
||||
@@ -302,7 +292,7 @@ public:
|
||||
me->CastSpell((Unit*)nullptr, 68574, true); // achievements
|
||||
me->SetFaction(FACTION_FRIENDLY);
|
||||
events.Reset();
|
||||
Talk(TEXT_PALETRESS_DEATH);
|
||||
Talk(SAY_PALETRESS_DEFEATED);
|
||||
me->GetThreatMgr().clearReferences();
|
||||
me->SetRegeneratingHealth(false);
|
||||
_EnterEvadeMode();
|
||||
@@ -341,7 +331,7 @@ public:
|
||||
if( !summoned && HealthBelowPct(25) )
|
||||
{
|
||||
me->InterruptNonMeleeSpells(true);
|
||||
Talk(TEXT_PALETRESS_MEMORY_SUMMON);
|
||||
Talk(SAY_PALETRESS_MEMORY_SUMMON);
|
||||
me->CastSpell((Unit*)nullptr, SPELL_HOLY_NOVA, false);
|
||||
me->CastSpell(me, SPELL_SHIELD, false);
|
||||
me->CastSpell((Unit*)nullptr, SPELL_SUMMON_MEMORY, false);
|
||||
|
||||
@@ -174,7 +174,7 @@ public:
|
||||
return;
|
||||
|
||||
pInstance->SetData(BOSS_BLACK_KNIGHT, IN_PROGRESS);
|
||||
Talk(TEXT_BK_AGGRO);
|
||||
Talk(SAY_BK_AGGRO);
|
||||
me->CastSpell((Unit*)nullptr, (pInstance->GetData(DATA_TEAMID_IN_INSTANCE) == TEAM_HORDE ? SPELL_RAISE_DEAD_JAEREN : SPELL_RAISE_DEAD_ARELAS), false);
|
||||
if( Creature* announcer = pInstance->instance->GetCreature(pInstance->GetGuidData(DATA_ANNOUNCER)) )
|
||||
announcer->DespawnOrUnsummon();
|
||||
@@ -209,7 +209,7 @@ public:
|
||||
{
|
||||
case 2:
|
||||
me->SetDisplayId(MODEL_SKELETON);
|
||||
Talk(TEXT_BK_SKELETON_RES);
|
||||
Talk(SAY_BK_PHASE_2);
|
||||
me->CastSpell(me, SPELL_ARMY_DEAD, false);
|
||||
|
||||
events.Reset();
|
||||
@@ -220,7 +220,7 @@ public:
|
||||
break;
|
||||
case 3:
|
||||
me->SetDisplayId(MODEL_GHOST);
|
||||
Talk(TEXT_BK_GHOST_RES);
|
||||
Talk(SAY_BK_PHASE_3);
|
||||
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_SPELL_DEATH_BITE, 2s);
|
||||
@@ -251,8 +251,8 @@ public:
|
||||
case EVENT_ANNOUNCER_SAY_ZOMBIE:
|
||||
if( pInstance && !summons.empty() )
|
||||
if( Creature* ghoul = pInstance->instance->GetCreature(*summons.begin()) )
|
||||
ghoul->Yell("[Zombie] .... . Brains ....", LANG_UNIVERSAL);
|
||||
|
||||
if (urand(0, 1))
|
||||
ghoul->Yell("[Zombie] .... . Brains ....", LANG_UNIVERSAL); /// @todo: Multiple variations + not always happening, from video sources, needs sniff to transition from DB.
|
||||
break;
|
||||
case EVENT_SPELL_PLAGUE_STRIKE:
|
||||
if( me->GetVictim() )
|
||||
@@ -307,17 +307,14 @@ public:
|
||||
{
|
||||
if( victim->GetTypeId() == TYPEID_PLAYER )
|
||||
{
|
||||
if( urand(0, 1) )
|
||||
Talk(TEXT_BK_SLAIN_1);
|
||||
else
|
||||
Talk(TEXT_BK_SLAIN_2);
|
||||
Talk(SAY_BK_KILL_PLAYER);
|
||||
}
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/) override
|
||||
{
|
||||
me->CastSpell((Unit*)nullptr, SPELL_BK_KILL_CREDIT, true);
|
||||
Talk(TEXT_BK_DEATH);
|
||||
Talk(SAY_BK_DEATH);
|
||||
if( pInstance )
|
||||
pInstance->SetData(BOSS_BLACK_KNIGHT, DONE);
|
||||
if( me->ToTempSummon() )
|
||||
|
||||
@@ -90,6 +90,11 @@ enum ChampionSpells
|
||||
SPELL_ROLLING_THROW = 67546, // not implemented yet!
|
||||
};
|
||||
|
||||
enum Texts
|
||||
{
|
||||
SAY_TRAMPLED = 0,
|
||||
};
|
||||
|
||||
#define SPELL_FIREBALL DUNGEON_MODE(SPELL_FIREBALL_N, SPELL_FIREBALL_H)
|
||||
#define SPELL_BLAST_WAVE DUNGEON_MODE(SPELL_BLAST_WAVE_N, SPELL_BLAST_WAVE_H)
|
||||
#define SPELL_POLYMORPH DUNGEON_MODE(SPELL_POLYMORPH_N, SPELL_POLYMORPH_H)
|
||||
@@ -647,16 +652,8 @@ public:
|
||||
|
||||
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
|
||||
{
|
||||
switch( spell->Id )
|
||||
{
|
||||
case SPELL_TRAMPLE_STUN:
|
||||
{
|
||||
char buffer[50];
|
||||
snprintf(buffer, sizeof(buffer), "%s is trampled!", me->GetName().c_str());
|
||||
me->TextEmote(buffer);
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (spell->Id == SPELL_TRAMPLE_STUN)
|
||||
Talk(SAY_TRAMPLED, me);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -25,6 +25,17 @@
|
||||
const Position SpawnPosition = {746.67f, 684.08f, 412.5f, 4.65f};
|
||||
#define CLEANUP_CHECK_INTERVAL 5000
|
||||
|
||||
/**
|
||||
* @todo: Missing dialog/RP (already populated in DB) && spawns (can use ToC25 locations?) for:
|
||||
*
|
||||
* Garrosh Hellscream 34995
|
||||
* King Varian Wrynn 34990
|
||||
* Lady Jaina Proudmoore 34992 (missing in DB)
|
||||
* Thrall 34994
|
||||
*
|
||||
* And possibly NPC_TIRION 33628 is wrong (should be 34996, from ToC25, needs a sniff to confirm, check .h)
|
||||
*/
|
||||
|
||||
class Group;
|
||||
|
||||
class instance_trial_of_the_champion : public InstanceMapScript
|
||||
@@ -523,9 +534,9 @@ public:
|
||||
{
|
||||
Counter = urand(0, 1);
|
||||
if( Counter )
|
||||
announcer->AI()->Talk(TEXT_INTRODUCE_EADRIC);
|
||||
announcer->AI()->Talk(SAY_EADRIC_INTRO_ANNOUNCER);
|
||||
else
|
||||
announcer->AI()->Talk(TEXT_INTRODUCE_PALETRESS);
|
||||
announcer->AI()->Talk(SAY_JAEREN_PALETRESS_INTRO);
|
||||
}
|
||||
HandleGameObject(GO_EnterGateGUID, false);
|
||||
events.RescheduleEvent(EVENT_START_ARGENT_CHALLENGE_INTRO, 0ms);
|
||||
@@ -702,27 +713,27 @@ public:
|
||||
case 0:
|
||||
CHAMPION_TO_SUMMON = NPC_MOKRA;
|
||||
MINION_TO_SUMMON = NPC_ORGRIMMAR_MINION;
|
||||
TEXT_ID = TEXT_MOKRA_SKILLCRUSHER;
|
||||
TEXT_ID = SAY_GRAND_CHAMPIONS_INTRO_SKULLCRUSHER;
|
||||
break;
|
||||
case 1:
|
||||
CHAMPION_TO_SUMMON = NPC_ERESSEA;
|
||||
MINION_TO_SUMMON = NPC_SILVERMOON_MINION;
|
||||
TEXT_ID = TEXT_ERESSEA_DAWNSINGER;
|
||||
TEXT_ID = SAY_GRAND_CHAMPIONS_INTRO_DAWNSINGER;
|
||||
break;
|
||||
case 2:
|
||||
CHAMPION_TO_SUMMON = NPC_RUNOK;
|
||||
MINION_TO_SUMMON = NPC_THUNDER_BLUFF_MINION;
|
||||
TEXT_ID = TEXT_RUNOK_WILDMANE;
|
||||
TEXT_ID = SAY_GRAND_CHAMPIONS_INTRO_WILDMANE;
|
||||
break;
|
||||
case 3:
|
||||
CHAMPION_TO_SUMMON = NPC_ZULTORE;
|
||||
MINION_TO_SUMMON = NPC_SENJIN_MINION;
|
||||
TEXT_ID = TEXT_ZUL_TORE;
|
||||
TEXT_ID = SAY_GRAND_CHAMPIONS_INTRO_ZULTORE;
|
||||
break;
|
||||
case 4:
|
||||
CHAMPION_TO_SUMMON = NPC_VISCERI;
|
||||
MINION_TO_SUMMON = NPC_UNDERCITY_MINION;
|
||||
TEXT_ID = TEXT_DEATHSTALKER_VESCERI;
|
||||
TEXT_ID = SAY_GRAND_CHAMPIONS_INTRO_DEATHSTALKER;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
@@ -767,10 +778,7 @@ public:
|
||||
if (!shortver)
|
||||
if( Creature* announcer = instance->GetCreature(NPC_AnnouncerGUID) )
|
||||
{
|
||||
if( TeamIdInInstance == TEAM_HORDE )
|
||||
TEXT_ID -= 10;
|
||||
announcer->AI()->Talk(TEXT_ID);
|
||||
announcer->AI()->Talk(TEXT_ID + 1);
|
||||
announcer->AI()->Talk(TEXT_ID); /// @todo: Missing Argent Raid Spectator cheers.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1007,16 +1015,6 @@ public:
|
||||
HandleGameObject(GO_MainGateGUID, true, gate);
|
||||
HandleGameObject(GO_EnterGateGUID, false, gate);
|
||||
}
|
||||
if( Counter )
|
||||
{
|
||||
announcer->AI()->Talk(TEXT_CHEER_EADRIC_1);
|
||||
announcer->AI()->Talk(TEXT_CHEER_EADRIC_2);
|
||||
}
|
||||
else
|
||||
{
|
||||
announcer->AI()->Talk(TEXT_CHEER_PALETRESS_1);
|
||||
announcer->AI()->Talk(TEXT_CHEER_PALETRESS_2);
|
||||
}
|
||||
}
|
||||
|
||||
for( int8 i = 0; i < 3; ++i )
|
||||
@@ -1060,7 +1058,7 @@ public:
|
||||
case EVENT_ARGENT_CHALLENGE_SAY_1:
|
||||
{
|
||||
if( Creature* ac = instance->GetCreature(NPC_ArgentChampionGUID) )
|
||||
ac->AI()->Talk(Counter ? TEXT_EADRIC_SAY_1 : TEXT_PALETRESS_SAY_1);
|
||||
ac->AI()->Talk(Counter ? SAY_EADRIC_INTRO : SAY_PALETRESS_INTRO_1);
|
||||
if( !Counter )
|
||||
events.ScheduleEvent(EVENT_ARGENT_CHALLENGE_SAY_2, 6s);
|
||||
}
|
||||
@@ -1068,7 +1066,7 @@ public:
|
||||
case EVENT_ARGENT_CHALLENGE_SAY_2:
|
||||
{
|
||||
if( Creature* ac = instance->GetCreature(NPC_ArgentChampionGUID) )
|
||||
ac->AI()->Talk(TEXT_PALETRESS_SAY_2);
|
||||
ac->AI()->Talk(SAY_PALETRESS_INTRO_2);
|
||||
}
|
||||
break;
|
||||
case EVENT_ARGENT_SOLDIER_GROUP_ATTACK:
|
||||
@@ -1163,7 +1161,7 @@ public:
|
||||
}
|
||||
|
||||
announcer->SetFacingToObject(bk_vehicle);
|
||||
announcer->AI()->Talk(TEXT_BK_RAFTERS);
|
||||
announcer->AI()->Talk(SAY_KNIGHT_INTRO);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1174,7 +1172,7 @@ public:
|
||||
Position exitPos = { 751.003357f, 638.145508f, 411.570129f, M_PI };
|
||||
bk->ExitVehicle(/*&exitPos*/);
|
||||
bk->GetMotionMaster()->MoveJump(exitPos, 2.0f, 2.0f);
|
||||
bk->AI()->Talk(TEXT_BK_SPOILED);
|
||||
bk->AI()->Talk(SAY_BK_INTRO_1);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_BLACK_KNIGHT_CAST_ANNOUNCER, 2s);
|
||||
}
|
||||
@@ -1212,7 +1210,7 @@ public:
|
||||
{
|
||||
bk->SetUnitMovementFlags(MOVEMENTFLAG_WALKING);
|
||||
bk->GetMotionMaster()->MovePoint(0, 746.81f, 623.15f, 411.42f);
|
||||
bk->AI()->Talk(TEXT_BK_LICH);
|
||||
bk->AI()->Talk(SAY_BK_INTRO_2);
|
||||
}
|
||||
if( Creature* announcer = instance->GetCreature(NPC_AnnouncerGUID) )
|
||||
if (announcer->IsAlive())
|
||||
@@ -1225,7 +1223,7 @@ public:
|
||||
if( Creature* bk = instance->GetCreature(NPC_BlackKnightGUID) )
|
||||
{
|
||||
bk->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
bk->AI()->Talk(TEXT_BK_TASK);
|
||||
bk->AI()->Talk(SAY_BK_INTRO_3);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_BLACK_KNIGHT_ATTACK, 5s);
|
||||
}
|
||||
|
||||
@@ -21,10 +21,23 @@
|
||||
#include "ScriptedCreature.h"
|
||||
#include "ScriptedGossip.h"
|
||||
|
||||
#define GOSSIP_START_EVENT1a "I am ready."
|
||||
#define GOSSIP_START_EVENT1b "I am ready. However I'd like to skip the pageantry."
|
||||
#define GOSSIP_START_EVENT2 "I'm ready for the next challenge."
|
||||
#define GOSSIP_START_EVENT3 "I'm ready."
|
||||
enum Texts
|
||||
{
|
||||
NPC_TEXT_NOT_MOUNTED_H = 15043, // Horde text
|
||||
NPC_TEXT_NOT_MOUNTED_A = 14757, // Alliance text
|
||||
|
||||
NPC_TEXT_CHALLENGE_1 = 14688,
|
||||
NPC_TEXT_CHALLENGE_2 = 14737,
|
||||
NPC_TEXT_CHALLENGE_3 = 14738,
|
||||
|
||||
GOSSIP_MENU_STAGE = 10614,
|
||||
|
||||
GOSSIP_START_EVENT_1A = 0,
|
||||
GOSSIP_START_EVENT_1B = 3, // Skip roleplay
|
||||
GOSSIP_START_EVENT_2 = 1,
|
||||
GOSSIP_START_EVENT_3 = 2,
|
||||
|
||||
};
|
||||
|
||||
class npc_announcer_toc5 : public CreatureScript
|
||||
{
|
||||
@@ -47,29 +60,28 @@ public:
|
||||
if (!player->GetVehicle())
|
||||
{
|
||||
if (pInstance->GetData(DATA_TEAMID_IN_INSTANCE) == TEAM_HORDE)
|
||||
gossipTextId = 15043; //Horde text
|
||||
gossipTextId = NPC_TEXT_NOT_MOUNTED_H;
|
||||
else
|
||||
gossipTextId = 14757; //Alliance text
|
||||
gossipTextId = NPC_TEXT_NOT_MOUNTED_A;
|
||||
}
|
||||
else
|
||||
{
|
||||
gossipTextId = 14688;
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_START_EVENT1a, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1338);
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_START_EVENT1b, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1341);
|
||||
gossipTextId = NPC_TEXT_CHALLENGE_1;
|
||||
AddGossipItemFor(player, GOSSIP_MENU_STAGE, GOSSIP_START_EVENT_1A, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
AddGossipItemFor(player, GOSSIP_MENU_STAGE, GOSSIP_START_EVENT_1B, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||
}
|
||||
break;
|
||||
case INSTANCE_PROGRESS_CHAMPIONS_DEAD:
|
||||
gossipTextId = 14737;
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_START_EVENT2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1339);
|
||||
gossipTextId = NPC_TEXT_CHALLENGE_2;
|
||||
AddGossipItemFor(player, GOSSIP_MENU_STAGE, GOSSIP_START_EVENT_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
|
||||
break;
|
||||
case INSTANCE_PROGRESS_ARGENT_CHALLENGE_DIED:
|
||||
gossipTextId = 14738;
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_START_EVENT3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1340);
|
||||
gossipTextId = NPC_TEXT_CHALLENGE_3;
|
||||
AddGossipItemFor(player, GOSSIP_MENU_STAGE, GOSSIP_START_EVENT_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
|
||||
break;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
|
||||
SendGossipMenuFor(player, gossipTextId, creature->GetGUID());
|
||||
return true;
|
||||
}
|
||||
@@ -83,9 +95,9 @@ public:
|
||||
if(!pInstance)
|
||||
return true;
|
||||
|
||||
if(uiAction == GOSSIP_ACTION_INFO_DEF + 1338 || uiAction == GOSSIP_ACTION_INFO_DEF + 1341 || uiAction == GOSSIP_ACTION_INFO_DEF + 1339 || uiAction == GOSSIP_ACTION_INFO_DEF + 1340)
|
||||
if(uiAction == GOSSIP_ACTION_INFO_DEF + 1 || uiAction == GOSSIP_ACTION_INFO_DEF + 2 || uiAction == GOSSIP_ACTION_INFO_DEF + 3 || uiAction == GOSSIP_ACTION_INFO_DEF + 4)
|
||||
{
|
||||
pInstance->SetData(DATA_ANNOUNCER_GOSSIP_SELECT, (uiAction == GOSSIP_ACTION_INFO_DEF + 1341 ? 1 : 0));
|
||||
pInstance->SetData(DATA_ANNOUNCER_GOSSIP_SELECT, (uiAction == GOSSIP_ACTION_INFO_DEF + 2 ? 1 : 0));
|
||||
creature->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
}
|
||||
|
||||
|
||||
@@ -141,11 +141,28 @@ enum eNpcs
|
||||
|
||||
NPC_BLACK_KNIGHT = 35451,
|
||||
|
||||
NPC_JAEREN = 35004,
|
||||
NPC_ARELAS = 35005,
|
||||
NPC_JAEREN = 35004, // Horde
|
||||
NPC_ARELAS = 35005, // Alliance
|
||||
NPC_RISEN_JAEREN = 35545,
|
||||
NPC_RISEN_ARELAS = 35564,
|
||||
NPC_TIRION = 33628,
|
||||
NPC_TIRION = 33628, // Possibly wrong npc here, 34996 had already populated creature_text (from ToC25) that matches. Needs a sniff to confirm.
|
||||
|
||||
/// @todo: Argent Raid Spectator - FX - Missing spawns for Toc5 (map 650), ToC25 probably matches positions, needs a sniff to confirm.
|
||||
// Horde
|
||||
NPC_SPECTATOR_HORDE = 34883,
|
||||
NPC_SPECTATOR_BELF = 34904,
|
||||
NPC_SPECTATOR_TAUREN = 34903,
|
||||
NPC_SPECTATOR_TROLL = 34902,
|
||||
NPC_SPECTATOR_ORC = 34901,
|
||||
NPC_SPECTATOR_UNDEAD = 34905,
|
||||
|
||||
// Alliance
|
||||
NPC_SPECTATOR_ALLIANCE = 34887,
|
||||
NPC_SPECTATOR_DWARF = 34906,
|
||||
NPC_SPECTATOR_GNOME = 34910,
|
||||
NPC_SPECTATOR_HUMAN = 34900,
|
||||
NPC_SPECTATOR_NELF = 34909,
|
||||
NPC_SPECTATOR_DRAENEI = 34908,
|
||||
};
|
||||
|
||||
enum eGameObjects
|
||||
@@ -175,69 +192,57 @@ enum eVehicles
|
||||
|
||||
enum eTexts
|
||||
{
|
||||
TEXT_LANA_STOUTHAMMER = 1,
|
||||
TEXT_CHEER_LANA_STOUTHAMMER = 2,
|
||||
TEXT_COLOSOS = 3,
|
||||
TEXT_CHEER_COLOSOS = 4,
|
||||
TEXT_EVENSONG = 5,
|
||||
TEXT_CHEER_EVENSONG = 6,
|
||||
TEXT_MARSHAL_JACOB_ALERIUS = 7,
|
||||
TEXT_CHEER_MARSHAL_JACOB_ALERIUS = 8,
|
||||
TEXT_AMBROSE_BOLTSPARK = 9,
|
||||
TEXT_CHEER_AMBROSE_BOLTSPARK = 10,
|
||||
// Spectators
|
||||
SAY_SPECTATOR_CHEER = 0,
|
||||
|
||||
TEXT_DEATHSTALKER_VESCERI = 11,
|
||||
TEXT_CHEER_DEATHSTALKER_VESCERI = 12,
|
||||
TEXT_RUNOK_WILDMANE = 13,
|
||||
TEXT_CHEER_RUNOK_WILDMANE = 14,
|
||||
TEXT_ZUL_TORE = 15,
|
||||
TEXT_CHEER_ZUL_TORE = 16,
|
||||
TEXT_MOKRA_SKILLCRUSHER = 17,
|
||||
TEXT_CHEER_MOKRA_SKILLCRUSHER = 18,
|
||||
TEXT_ERESSEA_DAWNSINGER = 19,
|
||||
TEXT_CHEER_ERESSEA_DAWNSINGER = 20,
|
||||
// Announcers: Alliance Announcer - Arelas Brightstar && Horde Announcer - Jaeren Sunsworn
|
||||
SAY_EADRIC_INTRO_ANNOUNCER = 0,
|
||||
SAY_JAEREN_PALETRESS_INTRO = 1,
|
||||
SAY_GRAND_CHAMPIONS_INTRO_1 = 2,
|
||||
SAY_GRAND_CHAMPIONS_INTRO_DAWNSINGER = 3, // Boltspark
|
||||
SAY_GRAND_CHAMPIONS_INTRO_ZULTORE = 4, // Jaelyne
|
||||
SAY_GRAND_CHAMPIONS_INTRO_SKULLCRUSHER = 5, // Jacob
|
||||
SAY_GRAND_CHAMPIONS_INTRO_DEATHSTALKER = 6, // Lana
|
||||
SAY_GRAND_CHAMPIONS_INTRO_WILDMANE = 7, // Colosos
|
||||
SAY_KNIGHT_INTRO = 8,
|
||||
|
||||
// Eadric
|
||||
SAY_EADRIC_INTRO = 0,
|
||||
SAY_EADRIC_AGGRO = 1,
|
||||
SAY_EADRIC_EMOTE_RADIANCE = 2,
|
||||
SAY_EADRIC_EMOTE_HAMMER_RIGHTEOUS = 3,
|
||||
SAY_EADRIC_HAMMER_RIGHTEOUS = 4,
|
||||
SAY_EADRIC_KILL_PLAYER = 5, // "You! You need more practice." && "Nay, nay, and I say yet again nay! Not good enough."
|
||||
SAY_EADRIC_DEFEATED = 6,
|
||||
|
||||
// Confessor Paletress
|
||||
SAY_PALETRESS_INTRO_1 = 0,
|
||||
SAY_PALETRESS_INTRO_2 = 1,
|
||||
SAY_PALETRESS_AGGRO = 2,
|
||||
SAY_PALETRESS_MEMORY_SUMMON = 3,
|
||||
SAY_PALETRESS_MEMORY_DEATH = 4,
|
||||
SAY_PALETRESS_KILL_PLAYER = 5, // "Take your rest. "&& "Be at ease."
|
||||
SAY_PALETRESS_DEFEATED = 6,
|
||||
|
||||
// Tirion
|
||||
TEXT_WELCOME = 21,
|
||||
TEXT_WELCOME_2 = 22,
|
||||
TEXT_BEGIN = 23,
|
||||
TEXT_GRATZ_SLAIN_CHAMPIONS = 24,
|
||||
TEXT_INTRODUCE_EADRIC = 25,
|
||||
TEXT_INTRODUCE_PALETRESS = 26,
|
||||
TEXT_CHEER_EADRIC_1 = 27,
|
||||
TEXT_CHEER_EADRIC_2 = 28,
|
||||
TEXT_EADRIC_SAY_1 = 39,
|
||||
TEXT_CHEER_PALETRESS_1 = 29,
|
||||
TEXT_CHEER_PALETRESS_2 = 30,
|
||||
TEXT_PALETRESS_SAY_1 = 37,
|
||||
TEXT_PALETRESS_SAY_2 = 38,
|
||||
TEXT_YOU_MAY_BEGIN = 41,
|
||||
|
||||
// Tirion - The Black Knight Interactions
|
||||
TEXT_BK_INTRO = 31,
|
||||
TEXT_BK_RAFTERS = 32,
|
||||
TEXT_BK_SPOILED = 33,
|
||||
TEXT_BK_MEANING = 34,
|
||||
TEXT_BK_LICH = 35,
|
||||
TEXT_BK_TASK = 36,
|
||||
|
||||
TEXT_EADRIC_AGGRO = 42,
|
||||
TEXT_EADRIC_HAMMER = 43,
|
||||
TEXT_EADRIC_SLAIN_1 = 44,
|
||||
TEXT_EADRIC_SLAIN_2 = 45,
|
||||
TEXT_EADRIC_DEATH = 46,
|
||||
|
||||
TEXT_PALETRESS_AGGRO = 47,
|
||||
TEXT_PALETRESS_MEMORY_SUMMON = 48,
|
||||
TEXT_PALETRESS_MEMORY_DEFEATED = 51,
|
||||
TEXT_PALETRESS_SLAIN_1 = 49,
|
||||
TEXT_PALETRESS_SLAIN_2 = 50,
|
||||
TEXT_PALETRESS_DEATH = 52,
|
||||
|
||||
TEXT_BK_AGGRO = 53,
|
||||
TEXT_BK_SLAIN_1 = 57,
|
||||
TEXT_BK_SLAIN_2 = 58,
|
||||
TEXT_BK_SKELETON_RES = 54,
|
||||
TEXT_BK_GHOST_RES = 55,
|
||||
TEXT_BK_DEATH = 56,
|
||||
// The Black Knight
|
||||
SAY_BK_INTRO_1 = 0,
|
||||
SAY_BK_INTRO_2 = 1,
|
||||
SAY_BK_INTRO_3 = 2,
|
||||
SAY_BK_AGGRO = 3,
|
||||
SAY_BK_PHASE_2 = 4, // Skeleton
|
||||
SAY_BK_PHASE_3 = 5, // Ghost
|
||||
SAY_BK_KILL_PLAYER = 6, // "Pathetic." && "A waste of flesh."
|
||||
SAY_BK_DEATH = 7,
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
|
||||
Reference in New Issue
Block a user