diff options
author | tkrokli <tkrokli@users.noreply.github.com> | 2016-08-25 08:49:09 +0200 |
---|---|---|
committer | Aokromes <Aokromes@users.noreply.github.com> | 2016-08-25 08:49:09 +0200 |
commit | 537074a8092ae694cf5d797a2a8f0ffa5013d43c (patch) | |
tree | 46fa03dfed4919866344117aa99db4e59f2671e6 /src | |
parent | ee204984c25d2a2f6d13ce38587f6ec7d48438a0 (diff) |
Core/Scripts: move forge_of_souls gossip to DB
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/forge_of_souls.cpp | 130 |
1 files changed, 32 insertions, 98 deletions
diff --git a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/forge_of_souls.cpp b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/forge_of_souls.cpp index 322f68fa112..b96ec867a32 100644 --- a/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/forge_of_souls.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/forge_of_souls.cpp @@ -36,33 +36,31 @@ enum Events EVENT_INTRO_8, }; -/****************************************SYLVANAS************************************/ -#define GOSSIP_SYLVANAS_ITEM "What would you have of me, Banshee Queen?" -#define GOSSIP_JAINA_ITEM "What would you have of me, my lady?" - enum Yells { - SAY_JAINA_INTRO_1 = 0, - SAY_JAINA_INTRO_2 = 1, - SAY_JAINA_INTRO_3 = 2, - SAY_JAINA_INTRO_4 = 3, - SAY_JAINA_INTRO_5 = 4, - SAY_JAINA_INTRO_6 = 5, - SAY_JAINA_INTRO_7 = 6, - SAY_JAINA_INTRO_8 = 7, - - SAY_SYLVANAS_INTRO_1 = 0, - SAY_SYLVANAS_INTRO_2 = 1, - SAY_SYLVANAS_INTRO_3 = 2, - SAY_SYLVANAS_INTRO_4 = 3, - SAY_SYLVANAS_INTRO_5 = 4, - SAY_SYLVANAS_INTRO_6 = 5, + SAY_JAINA_INTRO_1 = 0, + SAY_JAINA_INTRO_2 = 1, + SAY_JAINA_INTRO_3 = 2, + SAY_JAINA_INTRO_4 = 3, + SAY_JAINA_INTRO_5 = 4, + SAY_JAINA_INTRO_6 = 5, + SAY_JAINA_INTRO_7 = 6, + SAY_JAINA_INTRO_8 = 7, + + SAY_SYLVANAS_INTRO_1 = 0, + SAY_SYLVANAS_INTRO_2 = 1, + SAY_SYLVANAS_INTRO_3 = 2, + SAY_SYLVANAS_INTRO_4 = 3, + SAY_SYLVANAS_INTRO_5 = 4, + SAY_SYLVANAS_INTRO_6 = 5, }; enum Misc { - GOSSIP_SPEECHINTRO = 13525, ACTION_INTRO, + MENU_ID_JAINA = 10943, + MENU_ID_SYLVANAS = 10971, + GOSSIP_OPTION_ID = 0 }; enum Phase @@ -101,17 +99,15 @@ public: Initialize(); } - void DoAction(int32 actionId) override + void sGossipSelect(Player* player, uint32 menuId, uint32 gossipListId) override { - switch (actionId) + if (menuId == MENU_ID_SYLVANAS && gossipListId == GOSSIP_OPTION_ID) { - case ACTION_INTRO: - { - phase = PHASE_INTRO; - me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); - events.Reset(); - events.ScheduleEvent(EVENT_INTRO_1, 1000); - } + player->CLOSE_GOSSIP_MENU(); + phase = PHASE_INTRO; + me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + events.Reset(); + events.ScheduleEvent(EVENT_INTRO_1, 1000); } } @@ -164,36 +160,6 @@ public: } }; - bool OnGossipHello(Player* player, Creature* creature) override - { - if (creature->IsQuestGiver()) - player->PrepareQuestMenu(creature->GetGUID()); - - if (creature->GetEntry() == NPC_JAINA_PART1) - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_JAINA_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - else - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SYLVANAS_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - - player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, creature->GetGUID()); - return true; - } - - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) override - { - player->PlayerTalkClass->ClearMenus(); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF+1: - player->CLOSE_GOSSIP_MENU(); - - if (creature->AI()) - creature->AI()->DoAction(ACTION_INTRO); - break; - } - - return true; - } - CreatureAI* GetAI(Creature* creature) const override { return GetInstanceAI<npc_sylvanas_fosAI>(creature); @@ -230,17 +196,15 @@ public: Initialize(); } - void DoAction(int32 actionId) override + void sGossipSelect(Player* player, uint32 menuId, uint32 gossipListId) override { - switch (actionId) + if (menuId == MENU_ID_JAINA && gossipListId == GOSSIP_OPTION_ID) { - case ACTION_INTRO: - { - phase = PHASE_INTRO; - me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); - events.Reset(); - events.ScheduleEvent(EVENT_INTRO_1, 1000); - } + player->CLOSE_GOSSIP_MENU(); + phase = PHASE_INTRO; + me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + events.Reset(); + events.ScheduleEvent(EVENT_INTRO_1, 1000); } } @@ -304,36 +268,6 @@ public: } }; - bool OnGossipHello(Player* player, Creature* creature) override - { - if (creature->IsQuestGiver()) - player->PrepareQuestMenu(creature->GetGUID()); - - if (creature->GetEntry() == NPC_JAINA_PART1) - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_JAINA_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - else - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SYLVANAS_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - - player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, creature->GetGUID()); - return true; - } - - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) override - { - player->PlayerTalkClass->ClearMenus(); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF+1: - player->CLOSE_GOSSIP_MENU(); - - if (creature->AI()) - creature->AI()->DoAction(ACTION_INTRO); - break; - } - - return true; - } - CreatureAI* GetAI(Creature* creature) const override { return GetInstanceAI<npc_jaina_fosAI>(creature); |