Advertisement
EmuDevs

EmuDevs: TrinityCore - Making a Back menu using Gossip

Nov 4th, 2013
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. class npc_gossip_main : public CreatureScript
  2. {
  3. public:
  4.     npc_gossip_main() : CreatureScript("npc_gossip_main") { }
  5.  
  6.     bool OnGossipHello(Player* player, Creature* creature)
  7.     {
  8.         player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Next Menu", GOSSIP_SENDER_MAIN, 1);
  9.         player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Nevermind..", GOSSIP_SENDER_MAIN, 99);
  10.         player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  11.         return true;
  12.     }
  13.  
  14.     bool OnGossipSelect(Player* player, Creature* creature, uint32 /* sender */, uint32 actions)
  15.     {
  16.         player->PlayerTalkClass->ClearMenus();
  17.         if (actions == 1)
  18.         {
  19.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Next Menu 2", GOSSIP_SENDER_MAIN, 2);
  20.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Next Menu 3", GOSSIP_SENDER_MAIN, 3);
  21.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "<- Back <-", GOSSIP_SENDER_MAIN, 1000);
  22.             player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  23.             player->CLOSE_GOSSIP_MENU();
  24.         }
  25.         else if (actions == 99)
  26.             player->CLOSE_GOSSIP_MENU();
  27.         else if (actions == 1000)
  28.         {
  29.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Next Menu", GOSSIP_SENDER_MAIN, 1);
  30.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Nevermind..", GOSSIP_SENDER_MAIN, 99);
  31.             player->SEND_GOSSIP_MENU(1, creature->GetGUID());
  32.         }
  33.         return true;
  34.     }
  35. };
  36.  
  37. void AddSC_gossip_port()
  38. {
  39.     new npc_gossip_main;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement