fix(Scripts/MoltenCore): Move Majordomo Executus gossip to database (#25309)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
7352910a59
commit
331393df93
2 changed files with 16 additions and 47 deletions
|
|
@ -0,0 +1,9 @@
|
|||
-- Move Majordomo Executus Ragnaros summoning gossip chain to database
|
||||
-- Previously handled entirely in C++ script (sGossipHello/sGossipSelect)
|
||||
|
||||
-- Add gossip_menu entries (MenuID -> TextID) for the gossip chain
|
||||
DELETE FROM `gossip_menu` WHERE `MenuID` IN (4093, 4108, 4109);
|
||||
INSERT INTO `gossip_menu` (`MenuID`, `TextID`) VALUES
|
||||
(4093, 4995),
|
||||
(4109, 5011),
|
||||
(4108, 5012);
|
||||
|
|
@ -95,13 +95,7 @@ enum Events
|
|||
|
||||
enum Misc
|
||||
{
|
||||
TEXT_ID_SUMMON_1 = 4995,
|
||||
TEXT_ID_SUMMON_2 = 5011,
|
||||
TEXT_ID_SUMMON_3 = 5012,
|
||||
|
||||
GOSSIP_ITEM_SUMMON_1 = 4093,
|
||||
GOSSIP_ITEM_SUMMON_2 = 4109,
|
||||
GOSSIP_ITEM_SUMMON_3 = 4108,
|
||||
MENU_ID_RAGNAROS_SUMMON = 4108,
|
||||
|
||||
FACTION_MAJORDOMO_FRIENDLY = 1080,
|
||||
SUMMON_GROUP_ADDS = 1,
|
||||
|
|
@ -507,48 +501,14 @@ struct boss_majordomo : public BossAI
|
|||
}
|
||||
}
|
||||
|
||||
void sGossipHello(Player* player) override
|
||||
void sGossipSelect(Player* player, uint32 menuId, uint32 /*gossipListId*/) override
|
||||
{
|
||||
ClearGossipMenuFor(player);
|
||||
AddGossipItemFor(player, GOSSIP_ITEM_SUMMON_1, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
|
||||
SendGossipMenuFor(player, TEXT_ID_SUMMON_1, me->GetGUID());
|
||||
}
|
||||
|
||||
void sGossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override
|
||||
{
|
||||
uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId);
|
||||
ClearGossipMenuFor(player);
|
||||
switch (action)
|
||||
if (menuId == MENU_ID_RAGNAROS_SUMMON)
|
||||
{
|
||||
case GOSSIP_ACTION_INFO_DEF:
|
||||
{
|
||||
AddGossipItemFor(player, GOSSIP_ITEM_SUMMON_2, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
SendGossipMenuFor(player, TEXT_ID_SUMMON_2, me->GetGUID());
|
||||
break;
|
||||
}
|
||||
case GOSSIP_ACTION_INFO_DEF+1:
|
||||
{
|
||||
AddGossipItemFor(player, GOSSIP_ITEM_SUMMON_2, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||
SendGossipMenuFor(player, TEXT_ID_SUMMON_2, me->GetGUID());
|
||||
break;
|
||||
}
|
||||
case GOSSIP_ACTION_INFO_DEF+2:
|
||||
{
|
||||
AddGossipItemFor(player, GOSSIP_ITEM_SUMMON_3, 0, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
|
||||
SendGossipMenuFor(player, TEXT_ID_SUMMON_3, me->GetGUID());
|
||||
break;
|
||||
}
|
||||
case GOSSIP_ACTION_INFO_DEF+3:
|
||||
{
|
||||
CloseGossipMenuFor(player);
|
||||
me->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
Talk(SAY_RAG_SUM_1, player);
|
||||
DoAction(ACTION_START_RAGNAROS_INTRO);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
CloseGossipMenuFor(player);
|
||||
break;
|
||||
CloseGossipMenuFor(player);
|
||||
me->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
Talk(SAY_RAG_SUM_1, player);
|
||||
DoAction(ACTION_START_RAGNAROS_INTRO);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue