Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. #include "ScriptPCH.h"
  2.  
  3. class teleporter : public CreatureScript
  4. {
  5.     public:
  6.       teleporter() : CreatureScript("teleporter") { }
  7.  
  8.         bool OnGossipHello(Player * player, Creature * creature)
  9.         {
  10.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Home", GOSSIP_SENDER_MAIN, 999);
  11.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Events", GOSSIP_SENDER_MAIN, 998);
  12.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Instances", GOSSIP_SENDER_MAIN, 997);
  13.             player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Whatever", GOSSIP_SENDER_MAIN, 996);
  14.             player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
  15.             return true;
  16.         }
  17.  
  18.         bool OnGossipSelect(Player* player, Creature* creature, uint32 uiSender, uint32 uiAction)
  19.         {
  20.             player->PlayerTalkClass->ClearMenus();
  21.            
  22.             switch(uiAction)
  23.             {
  24.                 case 1:
  25.                     player->TeleportTo(530, -248.0f, 956.0f, 84.3628f, 1.58766f);
  26.                     player->PlayerTalkClass->SendCloseGossip();
  27.                     break;
  28.                 case 2:
  29.                     player->TeleportTo(1, 16226.200165f, 16257.000000f, 13.202200f, 1.650070f);
  30.                     player->PlayerTalkClass->SendCloseGossip();
  31.                     break;
  32.                 case 3:
  33.                     player->TeleportTo(530, -3362.33f, 5221.16f, -101.048f, 1.57331f);
  34.                     player->PlayerTalkClass->SendCloseGossip();
  35.                     break;
  36.                 case 4:
  37.                     player->TeleportTo(1, 4620.268066f, -3862.281738f, 944.372864f, 3.903039f);
  38.                     player->PlayerTalkClass->SendCloseGossip();
  39.                     break;
  40.                 case 5:
  41.                     player->TeleportTo(169, 2733.717773f, -3319.352783f, 101.433815f, 0.035281f);
  42.                     player->PlayerTalkClass->SendCloseGossip();
  43.                     break;
  44.                 case 6:
  45.                     player->TeleportTo(1, -8384.098633f, 1479.355835f, 15.379855f, 2.758327f);
  46.                     player->PlayerTalkClass->SendCloseGossip();
  47.                     break;
  48.                 case 7:
  49.                     player->TeleportTo(1, 2908.416992f, 2920.595459f, 4.829908f, 1.249563f);
  50.                     player->PlayerTalkClass->SendCloseGossip();
  51.                     break;
  52.                 case 8:
  53.                     player->TeleportTo(1, 2462.179932f, 2445.429932f, 131.414001f, 4.284460f);
  54.                     player->PlayerTalkClass->SendCloseGossip();
  55.                     break;
  56.                 case 999:
  57.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Home", GOSSIP_SENDER_MAIN, 999);
  58.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Events", GOSSIP_SENDER_MAIN, 998);
  59.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Instances", GOSSIP_SENDER_MAIN, 997);
  60.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Whatever", GOSSIP_SENDER_MAIN, 996);
  61.                     player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
  62.                 break;
  63.                 case 998:
  64.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Stair of Destiny", GOSSIP_SENDER_MAIN, 1);
  65.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "GM Island", GOSSIP_SENDER_MAIN, 2);
  66.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Auchenai Crypts", GOSSIP_SENDER_MAIN, 3);
  67.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Mount Hyjal", GOSSIP_SENDER_MAIN, 4);
  68.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Emerald Forest", GOSSIP_SENDER_MAIN, 5);
  69.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Ruins of Ahn'Qiraj", GOSSIP_SENDER_MAIN, 6);
  70.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_INTERACT_1, "Heavens Event", GOSSIP_SENDER_MAIN, 7);
  71.                     player->ADD_GOSSIP_ITEM(GOSSIP_ICON_INTERACT_1, "Maze Event", GOSSIP_SENDER_MAIN, 8);
  72.                     player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
  73.                 break;
  74.                 case 997:
  75.                 //
  76.                 break;
  77.                 case 996:
  78.                 //
  79.                 break;
  80.             }
  81.                 return true;
  82.         }
  83. };
  84.  
  85. void AddSC_teleporter()
  86. {
  87.    new teleporter;
  88. }