diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Commands/cs_quest.cpp | 5 | ||||
-rw-r--r-- | src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp | 49 |
2 files changed, 15 insertions, 39 deletions
diff --git a/src/server/scripts/Commands/cs_quest.cpp b/src/server/scripts/Commands/cs_quest.cpp index 369a8e87289..51eea4c2c6f 100644 --- a/src/server/scripts/Commands/cs_quest.cpp +++ b/src/server/scripts/Commands/cs_quest.cpp @@ -91,13 +91,8 @@ public: // ok, normal (creature/GO starting) quest if (player->CanAddQuest(quest, true)) - { player->AddQuestAndCheckCompletion(quest, NULL); - if (player->CanCompleteQuest(entry)) - player->CompleteQuest(entry); - } - return true; } diff --git a/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp b/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp index 9962ace5b94..7d80d0c20b7 100644 --- a/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp +++ b/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp @@ -24,17 +24,13 @@ Script Data End */ #include "ScriptMgr.h" #include "ScriptedCreature.h" -#include "ScriptedGossip.h" -#include "gnomeregan.h" #include "ScriptedEscortAI.h" +#include "ScriptedGossip.h" #include "Player.h" - -#define GOSSIP_START_EVENT "I am ready to begin." +#include "gnomeregan.h" enum BlastmasterEmi { - GOSSIP_TEXT_EMI = 1693, - SAY_BLASTMASTER_0 = 0, SAY_BLASTMASTER_1 = 1, SAY_BLASTMASTER_2 = 2, @@ -93,34 +89,6 @@ public: return GetInstanceAI<npc_blastmaster_emi_shortfuseAI>(creature); } - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) OVERRIDE - { - player->PlayerTalkClass->ClearMenus(); - if (action == GOSSIP_ACTION_INFO_DEF+1) - { - if (npc_escortAI* pEscortAI = CAST_AI(npc_blastmaster_emi_shortfuse::npc_blastmaster_emi_shortfuseAI, creature->AI())) - pEscortAI->Start(true, false, player->GetGUID()); - - creature->setFaction(player->getFaction()); - creature->AI()->SetData(1, 0); - - player->CLOSE_GOSSIP_MENU(); - } - return true; - } - - bool OnGossipHello(Player* player, Creature* creature) OVERRIDE - { - InstanceScript* instance = creature->GetInstanceScript(); - - if (instance && instance->GetData(TYPE_EVENT) == NOT_STARTED) - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_START_EVENT, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - - player->SEND_GOSSIP_MENU(GOSSIP_TEXT_EMI, creature->GetGUID()); - - return true; - } - struct npc_blastmaster_emi_shortfuseAI : public npc_escortAI { npc_blastmaster_emi_shortfuseAI(Creature* creature) : npc_escortAI(creature) @@ -152,6 +120,19 @@ public: } } + void sGossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) OVERRIDE + { + if (gossipListId == 0) + { + Start(true, false, player->GetGUID()); + + me->setFaction(player->getFaction()); + SetData(1, 0); + + player->PlayerTalkClass->SendCloseGossip(); + } + } + void NextStep(uint32 uiTimerStep, bool bNextStep = true, uint8 uiPhaseStep = 0) { uiTimer = uiTimerStep; |