Advertisement
EmuDevs

EmuDevs - TrinityCore QueryResult (WorldDatabase) Query

Jun 16th, 2013
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.48 KB | None | 0 0
  1. /*
  2.  *╔═╦═╦═╦╦╦══╦═╦╗─╔╦══╗
  3.  *║╦╣║║║║║╠╗╗║╦╣╚╦╝║══╣
  4.  *║╩╣║║║║║╠╩╝║╩╬╗║╔╬══║
  5.  *╚═╩╩═╩╩═╩══╩═╝╚═╝╚══╝
  6.  *       EmuDevs - (http://emudevs.com)
  7. */
  8. class npc_gossip_query : public CreatureScript
  9. {
  10. public:
  11.     npc_gossip_query() : CreatureScript("npc_gossip_query") { }
  12.  
  13.     bool OnGossipHello(Player* player, Creature* creature)
  14.     {
  15.         player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Query with me", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
  16.         return true;
  17.     }
  18.  
  19.     bool OnGossipSelect(Player* player, Creature* creature, uint32 /* sender */, uint32 actions)
  20.     {
  21.         player->PlayerTalkClass->ClearMenus();
  22.         if (actions == GOSSIP_ACTION_INFO_DEF+1)
  23.         {
  24.             QueryResult result = WorldDatabase.Query("SELECT name,modelid1 FROM creature_template WHERE entry='25'");
  25.             if (!result)
  26.                 return false;
  27.  
  28.             do
  29.             {
  30.                 Field* fields = result->Fetch();
  31.  
  32.                 std::string name     = fields[0].GetString();
  33.                 uint32 modelid1      = fields[1].GetUInt32();
  34.  
  35.                 ChatHandler(player->GetSession()).PSendSysMessage("CREATURE NAME: %s \n CREATURE MODELID1: %u", name.c_str(), modelid1);
  36.             }while(result->NextRow());
  37.         }
  38.     }
  39. };
  40.  
  41. void AddSC_query()
  42. {
  43.     new npc_gossip_query;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement