aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortkrokli <tkrokli@users.noreply.github.com>2016-08-25 08:49:09 +0200
committerAokromes <Aokromes@users.noreply.github.com>2016-08-25 08:49:09 +0200
commit537074a8092ae694cf5d797a2a8f0ffa5013d43c (patch)
tree46fa03dfed4919866344117aa99db4e59f2671e6 /src
parentee204984c25d2a2f6d13ce38587f6ec7d48438a0 (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.cpp130
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);