diff options
author | click <none@none> | 2010-10-21 20:12:33 +0200 |
---|---|---|
committer | click <none@none> | 2010-10-21 20:12:33 +0200 |
commit | 34eed2de3f56c5498bc43d450de6e0e2c4692177 (patch) | |
tree | af40afb93b74bba716cb8ffbcfe6643f3be6bafa /src/server/scripts/Examples | |
parent | 168a085723ff3e73442a51590846e12aac3a68bc (diff) |
Core/Scripts: Fix menu clearing in onGossipSelect()-sections for some scripts (including examples) - patch/fix by Paradox
Closes issue 4524
--HG--
branch : trunk
Diffstat (limited to 'src/server/scripts/Examples')
-rw-r--r-- | src/server/scripts/Examples/example_creature.cpp | 21 | ||||
-rw-r--r-- | src/server/scripts/Examples/example_escort.cpp | 37 | ||||
-rw-r--r-- | src/server/scripts/Examples/example_gossip_codebox.cpp | 36 |
3 files changed, 49 insertions, 45 deletions
diff --git a/src/server/scripts/Examples/example_creature.cpp b/src/server/scripts/Examples/example_creature.cpp index 9f06ea93ea4..8f0efe25032 100644 --- a/src/server/scripts/Examples/example_creature.cpp +++ b/src/server/scripts/Examples/example_creature.cpp @@ -258,27 +258,28 @@ class example_creature : public CreatureScript } }; - CreatureAI* GetAI(Creature* creature) const + CreatureAI* GetAI(Creature* pCreature) const { - return new example_creatureAI(creature); + return new example_creatureAI(pCreature); } - bool OnGossipHello(Player* player, Creature* creature) + bool OnGossipHello(Player* pPlayer, Creature* pCreature) { - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); - player->SEND_GOSSIP_MENU(907, creature->GetGUID()); + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); + pPlayer->SEND_GOSSIP_MENU(907, pCreature->GetGUID()); return true; } - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) + bool OnGossipSelect(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction) { - if (action == GOSSIP_ACTION_INFO_DEF+1) + pPlayer->PlayerTalkClass->ClearMenus(); + if (uiAction == GOSSIP_ACTION_INFO_DEF+1) { - player->CLOSE_GOSSIP_MENU(); + pPlayer->CLOSE_GOSSIP_MENU(); //Set our faction to hostile towards all - creature->setFaction(FACTION_WORGEN); - creature->AI()->AttackStart(player); + pCreature->setFaction(FACTION_WORGEN); + pCreature->AI()->AttackStart(pPlayer); } return true; diff --git a/src/server/scripts/Examples/example_escort.cpp b/src/server/scripts/Examples/example_escort.cpp index 1d771e2f85a..84001a1f5d7 100644 --- a/src/server/scripts/Examples/example_escort.cpp +++ b/src/server/scripts/Examples/example_escort.cpp @@ -178,48 +178,49 @@ class example_escort : public CreatureScript } }; - CreatureAI* GetAI(Creature* creature) const + CreatureAI* GetAI(Creature* pCreature) const { - return new example_escortAI(creature); + return new example_escortAI(pCreature); } - bool OnGossipHello(Player* player, Creature* creature) + bool OnGossipHello(Player* pPlayer, Creature* pCreature) { - player->TalkedToCreature(creature->GetEntry(), creature->GetGUID()); - player->PrepareGossipMenu(creature, 0); + pPlayer->TalkedToCreature(pCreature->GetEntry(), pCreature->GetGUID()); + pPlayer->PrepareGossipMenu(pCreature, 0); - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3); + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3); - player->SendPreparedGossip(creature); + pPlayer->SendPreparedGossip(pCreature); return true; } - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) + bool OnGossipSelect(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction) { - npc_escortAI* pEscortAI = CAST_AI(example_escort::example_escortAI, creature->AI()); + pPlayer->PlayerTalkClass->ClearMenus(); + npc_escortAI* pEscortAI = CAST_AI(example_escort::example_escortAI, pCreature->AI()); - switch(action) + switch(uiAction) { case GOSSIP_ACTION_INFO_DEF+1: - player->CLOSE_GOSSIP_MENU(); + pPlayer->CLOSE_GOSSIP_MENU(); if (pEscortAI) - pEscortAI->Start(true, true, player->GetGUID()); + pEscortAI->Start(true, true, pPlayer->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+2: - player->CLOSE_GOSSIP_MENU(); + pPlayer->CLOSE_GOSSIP_MENU(); if (pEscortAI) - pEscortAI->Start(false, false, player->GetGUID()); + pEscortAI->Start(false, false, pPlayer->GetGUID()); break; case GOSSIP_ACTION_INFO_DEF+3: - player->CLOSE_GOSSIP_MENU(); + pPlayer->CLOSE_GOSSIP_MENU(); if (pEscortAI) - pEscortAI->Start(false, true, player->GetGUID()); + pEscortAI->Start(false, true, pPlayer->GetGUID()); break; default: return false; // nothing defined -> trinity core handling diff --git a/src/server/scripts/Examples/example_gossip_codebox.cpp b/src/server/scripts/Examples/example_gossip_codebox.cpp index 117b206fc56..3727014c30c 100644 --- a/src/server/scripts/Examples/example_gossip_codebox.cpp +++ b/src/server/scripts/Examples/example_gossip_codebox.cpp @@ -48,45 +48,47 @@ class example_gossip_codebox : public CreatureScript { } - bool OnGossipHello(Player* player, Creature* creature) + bool OnGossipHello(Player* pPlayer, Creature* pCreature) { - player->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1, "", 0, true); - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); + pPlayer->ADD_GOSSIP_ITEM_EXTENDED(0, GOSSIP_ITEM_1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1, "", 0, true); + pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); - player->PlayerTalkClass->SendGossipMenu(907, creature->GetGUID()); + pPlayer->PlayerTalkClass->SendGossipMenu(907, pCreature->GetGUID()); return true; } - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) + bool OnGossipSelect(Player* pPlayer, Creature* pCreature, uint32 /*uiSender*/, uint32 uiAction) { - if (action == GOSSIP_ACTION_INFO_DEF+2) + pPlayer->PlayerTalkClass->ClearMenus(); + if (uiAction == GOSSIP_ACTION_INFO_DEF+2) { - DoScriptText(SAY_NOT_INTERESTED, creature); - player->CLOSE_GOSSIP_MENU(); + DoScriptText(SAY_NOT_INTERESTED, pCreature); + pPlayer->CLOSE_GOSSIP_MENU(); } return true; } - bool OnGossipSelectCode(Player* player, Creature* creature, uint32 sender, uint32 action, const char* code) + bool OnGossipSelectCode(Player* pPlayer, Creature* pCreature, uint32 uiSender, uint32 uiAction, const char* code) { - if (sender == GOSSIP_SENDER_MAIN) + pPlayer->PlayerTalkClass->ClearMenus(); + if (uiSender == GOSSIP_SENDER_MAIN) { - switch (action) + switch (uiAction) { case GOSSIP_ACTION_INFO_DEF+1: - if (std::strcmp(code, player->GetName()) != 0) + if (std::strcmp(code, pPlayer->GetName()) != 0) { - DoScriptText(SAY_WRONG, creature); - creature->CastSpell(player, SPELL_POLYMORPH, true); + DoScriptText(SAY_WRONG, pCreature); + pCreature->CastSpell(pPlayer, SPELL_POLYMORPH, true); } else { - DoScriptText(SAY_CORRECT, creature); - creature->CastSpell(player, SPELL_MARK_OF_THE_WILD, true); + DoScriptText(SAY_CORRECT, pCreature); + pCreature->CastSpell(pPlayer, SPELL_MARK_OF_THE_WILD, true); } - player->CLOSE_GOSSIP_MENU(); + pPlayer->CLOSE_GOSSIP_MENU(); return true; } |