Advertisement
Locutus

Teleporter npc

Dec 7th, 2012
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.44 KB | None | 0 0
  1. class npc_tele : public CreatureScript
  2. {
  3. public:
  4.     npc_tele() : CreatureScript("npc_tele") { }
  5.  
  6. bool OnGossipHello(Player *player, Creature *_Creature)
  7. {
  8.         if(player->GetTeam()== ALLIANCE) // ha a player alliance
  9.         {
  10.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Stormwind", GOSSIP_SENDER_MAIN, 100, "Biztos teleportálni akarsz?", 0, false);
  11.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Ironforge", GOSSIP_SENDER_MAIN, 200, "Biztos teleportálni akarsz?", 0, false);
  12.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Darnassus", GOSSIP_SENDER_MAIN, 300, "Biztos teleportálni akarsz?", 0, false);
  13.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Exodar", GOSSIP_SENDER_MAIN, 400, "Biztos teleportálni akarsz?", 0, false);
  14.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Shattrath", GOSSIP_SENDER_MAIN, 500, "Biztos teleportálni akarsz?", 0, false);
  15.                 player->ADD_GOSSIP_ITEM(0, "Teleport Dalaran", GOSSIP_SENDER_MAIN, 600);
  16.                 player->ADD_GOSSIP_ITEM(0, "Gurubashi Arena", GOSSIP_SENDER_MAIN, 700);
  17.                 player->SEND_GOSSIP_MENU(1, _Creature->GetGUID());
  18.                 /*Hozzáadás a következő módon:*/
  19.                 // pPlayer->ADD_GOSSIP_ITEM(0, "Teleport Helye", GOSSIP_SENDER_MAIN, case);
  20.                 // case helyére egy szám kell OLYAN AMI MÉG NINCS!!!!
  21.         } else { // Ha a player hordás
  22.        
  23.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Orgrimmar", GOSSIP_SENDER_MAIN, 800, "Biztos teleportálni akarsz?", 0, false);
  24.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Undercity", GOSSIP_SENDER_MAIN, 900, "Biztos teleportálni akarsz?", 0, false);
  25.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Silvermoon", GOSSIP_SENDER_MAIN, 1000, "Biztos teleportálni akarsz?", 0, false);
  26.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Thunder Bluff", GOSSIP_SENDER_MAIN, 1100, "Biztos teleportálni akarsz?", 0, false);
  27.                 player->ADD_GOSSIP_ITEM_EXTENDED(0, "Teleport Shattrath", GOSSIP_SENDER_MAIN, 500, "Biztos teleportálni akarsz?", 0, false);
  28.                 player->ADD_GOSSIP_ITEM(0, "Teleport Dalaran", GOSSIP_SENDER_MAIN, 600);
  29.                 player->ADD_GOSSIP_ITEM(0, "Teleport Gurubashi Arena", GOSSIP_SENDER_MAIN, 700);
  30.                 player->SEND_GOSSIP_MENU(1, _Creature->GetGUID());
  31.  
  32.         }
  33. return true;
  34. }
  35.  
  36. bool OnGossipSelect(Player *player, Creature* _Creature, uint32 sender, uint32 action )
  37. {
  38.         switch(action)
  39.         {
  40.         case 100:
  41.                 player->CLOSE_GOSSIP_MENU();
  42.         player->TeleportTo(0, -8960.14f, 516.266f, 96.3568f, 0.0f); // Teleportok(location)
  43.                 break;
  44.  
  45.         case 200:
  46.                 player->CLOSE_GOSSIP_MENU();
  47.         player->TeleportTo(0, -4924.07f, -951.95f, 501.55f, 5.40f);
  48.                 break;
  49.  
  50.         case 300:
  51.                 player->CLOSE_GOSSIP_MENU();
  52.         player->TeleportTo(1, 9947.52f, 2482.73f, 1316.21f, 0.0f);
  53.                 break;
  54.                
  55.         case 400:
  56.                 player->CLOSE_GOSSIP_MENU();
  57.         player->TeleportTo(530, -3954.20f, -11656.54f, -138.69f, 0.0f);
  58.                 break;
  59.  
  60.         case 500:
  61.                         player->CLOSE_GOSSIP_MENU();
  62.         player->TeleportTo(530, -1850.209961f, 5435.821777f, -10.961435f, 3.403913f);
  63.                 break;
  64.  
  65.         case 600:
  66.                 player->CLOSE_GOSSIP_MENU();
  67.                 player->TeleportTo(571, 5819.08f, 643.99f, 647.80f, 3.32f);
  68.                 break;
  69.  
  70.         case 700:
  71.                 player->CLOSE_GOSSIP_MENU();
  72.                 player->TeleportTo(0,  -13277.4f, 127.372f, 26.1418f, 1.11878f);
  73.                 break;
  74.  
  75.         case 800:
  76.                  player->CLOSE_GOSSIP_MENU();
  77.         player->TeleportTo(1, 1552.5f, -4420.66f, 8.94802f, 0.0f);
  78.                 break;
  79.        
  80.         case 900:
  81.                 player->CLOSE_GOSSIP_MENU();
  82.         player->TeleportTo(0, 1819.71f, 238.79f, 60.5321f, 0.0f);
  83.        
  84. break;
  85.  
  86.         case 1000:
  87.                 player->CLOSE_GOSSIP_MENU();
  88.         player->TeleportTo(530, 9338.74f, -7277.27f, 13.7895f, 0.0f);
  89.                 break;
  90.  
  91.         case 1100:
  92.                         player->CLOSE_GOSSIP_MENU();
  93.         player->TeleportTo(1, -1290.0f, 147.033997f, 129.682007f, 4.919000f);
  94.        
  95. break;
  96.         }
  97. return true;
  98. }
  99. };
  100.  
  101. void AddSC_npc_tele()
  102. {
  103.     new npc_tele();
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement