Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #TELEPORTERS ARE GAY AS FUCK
- /*******************************************************
- * File:'teleporter.cpp'
- * ScriptName:'teleport_npc'
- * Complete:'100%'
- * Author:'Dracconus'
- * Comment: 'Ported from original teleporter.cpp and completely reworked to be more complete, and user friendly.'
- *******************************************************/
- /*******************************************************/
- #include "ScriptPCH.h"
- #define BUFF1 15366
- #define BUFF2 26271
- #define BUFF3 44776
- #define BUFF4 42500
- #define BUFF5 36237
- /*******************************************************/
- //MAIN MENU
- bool GossipHello_teleporter(Player *player, Creature *_Creature)
- {
- if(!player->isInCombat())
- {
- player->ADD_GOSSIP_ITEM( 0, "Main Cities" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->ADD_GOSSIP_ITEM( 0, "Neutral Cities" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 2);
- player->ADD_GOSSIP_ITEM( 0, "Dungeons" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 3);
- player->ADD_GOSSIP_ITEM( 0, "Raids" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->ADD_GOSSIP_ITEM( 0, "Gurubashi Arena" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 56);
- player->ADD_GOSSIP_ITEM( 0, "Player Tools" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 5);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- return true;
- }
- //PLAYER IS IN COMBAT-RAID STYLE WANNOUNCE (UNABLE TO TELEPORT)
- player->GetSession()->SendNotification("I am unable to teleport you if you are in combat.");
- return false;
- }
- //START MAIN CITIES SUB MENU
- void SendSubMenu_teleporter(Player *player, Creature *_Creature, uint32 action)
- {
- switch (action)
- {
- case GOSSIP_ACTION_INFO_DEF + 1:
- //MAIN CITITES SUB MENU
- if ( player->GetTeam() == ALLIANCE )
- {
- player->ADD_GOSSIP_ITEM(0, "Darnassus" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->ADD_GOSSIP_ITEM(0, "Ironforge" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 2);
- player->ADD_GOSSIP_ITEM(0, "Exodar" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 3);
- player->ADD_GOSSIP_ITEM(0, "Stormwind" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- }else{
- player->ADD_GOSSIP_ITEM(0, "Orgrimmar" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 5);
- player->ADD_GOSSIP_ITEM(0, "Silvermoon" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 6);
- player->ADD_GOSSIP_ITEM(0, "Thunderbluff" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 7);
- player->ADD_GOSSIP_ITEM(0, "Undercity" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 8);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- };
- break;
- //NEUTRAL CITIES SUB MENU
- case GOSSIP_ACTION_INFO_DEF + 2:
- {
- player->ADD_GOSSIP_ITEM(0, "Booty Bay" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 54);
- player->ADD_GOSSIP_ITEM(0, "Ratchet" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 55);
- player->ADD_GOSSIP_ITEM(0, "Shattrath" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 9);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- };
- break;
- //DUNGEONS
- case GOSSIP_ACTION_INFO_DEF + 3:
- player->ADD_GOSSIP_ITEM(0, "Eastern Kingdoms" , GOSSIP_SENDER_DUNGEON,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->ADD_GOSSIP_ITEM(0, "Kalimdor" , GOSSIP_SENDER_DUNGEON, GOSSIP_ACTION_INFO_DEF + 2);
- player->ADD_GOSSIP_ITEM(0, "Outland" , GOSSIP_SENDER_DUNGEON, GOSSIP_ACTION_INFO_DEF + 3);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //RAIDS
- case GOSSIP_ACTION_INFO_DEF + 4:
- player->ADD_GOSSIP_ITEM(0, "Eastern Kingdoms" , GOSSIP_SENDER_DUNGEON,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->ADD_GOSSIP_ITEM(0, "Kalimdor" , GOSSIP_SENDER_DUNGEON, GOSSIP_ACTION_INFO_DEF + 5);
- player->ADD_GOSSIP_ITEM(0, "Outland" , GOSSIP_SENDER_DUNGEON, GOSSIP_ACTION_INFO_DEF + 6);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START, GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //PLAYER TOOLS
- case GOSSIP_ACTION_INFO_DEF + 5:
- player->ADD_GOSSIP_ITEM(0, "Buff Me Up!!" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 51);
- player->ADD_GOSSIP_ITEM(0, "Heal Me" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 52);
- player->ADD_GOSSIP_ITEM(0, "Reset Cooldowns" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 53);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_START,
- GOSSIP_ACTION_INFO_DEF + 1);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- }
- }
- //START DUNGEOUN SUB MENU
- void SendSubDungeonMenu_teleporter(Player *player, Creature *_Creature, uint32 action)
- {
- switch (action)
- {
- //DUNGEONS LIST
- //EASTERN KINGDOMS
- case GOSSIP_ACTION_INFO_DEF + 1:
- player->ADD_GOSSIP_ITEM(0, "The Deadmines" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 10);
- player->ADD_GOSSIP_ITEM(0, "Shadowfang Keep" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 11);
- if ( player->GetTeam() == ALLIANCE ){
- player->ADD_GOSSIP_ITEM(0, "Stormwind Stockades" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 12);
- };
- player->ADD_GOSSIP_ITEM(0, "Gnomeregan" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 13);
- player->ADD_GOSSIP_ITEM(0, "The Scarlet Monastery" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 14);
- player->ADD_GOSSIP_ITEM(0, "Uldaman" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 15);
- player->ADD_GOSSIP_ITEM(0, "Sunken Temple" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 16);
- player->ADD_GOSSIP_ITEM(0, "Blackrock Mountain" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 17);
- player->ADD_GOSSIP_ITEM(0, "Stratholme" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 18);
- player->ADD_GOSSIP_ITEM(0, "Scholomance" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 19);
- player->ADD_GOSSIP_ITEM(0, "Magisters' Terrace" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 20);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //KALIMDOR
- case GOSSIP_ACTION_INFO_DEF + 2:
- if ( player->GetTeam() == HORDE ){
- player->ADD_GOSSIP_ITEM(0, "Ragefire Chasm" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 21);
- };
- player->ADD_GOSSIP_ITEM(0, "Wailing Caverns" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 22);
- player->ADD_GOSSIP_ITEM(0, "Blackfathom Deeps" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 23);
- player->ADD_GOSSIP_ITEM(0, "Razorfen Kraul" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 24);
- player->ADD_GOSSIP_ITEM(0, "Razorfen Downs" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 25);
- player->ADD_GOSSIP_ITEM(0, "Zul'Farrak" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 26);
- player->ADD_GOSSIP_ITEM(0, "Maraudon" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 27);
- player->ADD_GOSSIP_ITEM(0, "Dire Maul" , GOSSIP_SENDER_ACTION,
- GOSSIP_ACTION_INFO_DEF + 28);
- player->ADD_GOSSIP_ITEM(0, "Caverns of Time" , GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF +
- 29);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //OUTLANDS
- case GOSSIP_ACTION_INFO_DEF + 3:
- player->ADD_GOSSIP_ITEM(0, "Hellfire Citadel" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 30);
- player->ADD_GOSSIP_ITEM(0, "Coilfang Reservoir" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 31);
- player->ADD_GOSSIP_ITEM(0, "Auchindoun" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 32);
- player->ADD_GOSSIP_ITEM(0, "Tempest Keep" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 33);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 3);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //RAIDS
- //EASTERN KINGDOMS
- case GOSSIP_ACTION_INFO_DEF + 4:
- player->ADD_GOSSIP_ITEM(0, "Upper Blackrock Spire" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 34);
- player->ADD_GOSSIP_ITEM(0, "Zul'Gurub" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 35);
- player->ADD_GOSSIP_ITEM(0, "Molten Core" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 36);
- player->ADD_GOSSIP_ITEM(0, "Blackwing Lair" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 37);
- player->ADD_GOSSIP_ITEM(0, "Naxxramas" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 38);
- player->ADD_GOSSIP_ITEM(0, "Karazhan" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 39);
- player->ADD_GOSSIP_ITEM(0, "Sunwell Plateau" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 40);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //KALIMDOR
- case GOSSIP_ACTION_INFO_DEF + 5:
- player->ADD_GOSSIP_ITEM(0, "Onyxia's Lair" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 41);
- player->ADD_GOSSIP_ITEM(0, "Ruins of Ahn'Qiraj" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 42);
- player->ADD_GOSSIP_ITEM(0, "Temple of Ahn'Qiraj" ,
- GOSSIP_SENDER_ACTION,GOSSIP_ACTION_INFO_DEF + 43);
- player->ADD_GOSSIP_ITEM(0, "Zul'Aman" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 44);
- player->ADD_GOSSIP_ITEM(0, "Battle for Mount Hyjal" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 45);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- //OUTLANDS
- case GOSSIP_ACTION_INFO_DEF + 6:
- player->ADD_GOSSIP_ITEM(0, "Gruul's Lair" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 46);
- player->ADD_GOSSIP_ITEM(0, "Magtheridon's Lair" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 47);
- player->ADD_GOSSIP_ITEM(0, "Serpentshrine Cavern" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 48);
- player->ADD_GOSSIP_ITEM(0, "The Eye" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 49);
- player->ADD_GOSSIP_ITEM(0, "Black Temple" ,
- GOSSIP_SENDER_ACTION, GOSSIP_ACTION_INFO_DEF + 50);
- player->ADD_GOSSIP_ITEM(0, "Back" , GOSSIP_SENDER_MAIN,
- GOSSIP_ACTION_INFO_DEF + 4);
- player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE,_Creature->GetGUID());
- break;
- }
- }
- //START TELEPORTATION LIST
- void SendActionMenu_teleporter(Player *player, Creature *_Creature, uint32 action)
- {
- switch (action)
- {
- //Darnassus
- case GOSSIP_ACTION_INFO_DEF + 1:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, 9952.1f, 2272.3f, 1341.7f, 1.5f);
- break;
- //Ironforge
- case GOSSIP_ACTION_INFO_DEF + 2:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -4982.8f, -880.5f, 502.0f, 5.3f);
- break;
- //Exodar
- case GOSSIP_ACTION_INFO_DEF + 3:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -3863.5f, -11742.6f, -106.5f, 2.1f);
- break;
- //Stormwind
- case GOSSIP_ACTION_INFO_DEF + 4:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -8893.9f, 569.0f, 92.9f, 0.6f);
- break;
- //Orgrimmar
- case GOSSIP_ACTION_INFO_DEF + 5:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, 1477.5f, -4417.5f, 25.9f, 0.1f);
- break;
- //Silvermoon
- case GOSSIP_ACTION_INFO_DEF + 6:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 9465.5f, -7278.2f, 14.7f, 6.2f);
- break;
- //Thunderbluff
- case GOSSIP_ACTION_INFO_DEF + 7:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -1290.1f, 146.9f, 130.1f, 4.8f);
- break;
- //Undercity
- case GOSSIP_ACTION_INFO_DEF + 8:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, 1629.9f, 239.7f, -42.6f, 3.1f);
- break;
- //Booty Bay
- case GOSSIP_ACTION_INFO_DEF + 54:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -14296.9f, 531.4f, 8.8f, 4.2f);
- break;
- //Ratchet
- case GOSSIP_ACTION_INFO_DEF + 55:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -956.6f, -3754.7f, 5.4f, 1.2f);
- break;
- //Shattrath
- case GOSSIP_ACTION_INFO_DEF + 9:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -1869.2f, 5441.3f, -9.9f, 5.1f);
- break;
- //Deadmines
- case GOSSIP_ACTION_INFO_DEF + 10:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -11208.3f, 1672.4f, 25.0f, 1.4f);
- break;
- //Shadowfang Keep
- case GOSSIP_ACTION_INFO_DEF + 11:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -234.1f, 1563.3f, 77.3f, 1.1f);
- break;
- //Stormwind Stockades
- case GOSSIP_ACTION_INFO_DEF + 12:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -8769.2f, 842.5f, 90.1f, 0.6f);
- break;
- //Gnomeregan
- case GOSSIP_ACTION_INFO_DEF + 13:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -5162.9f, 926.06f, 257.6f, 1.4f);
- break;
- //The Scarlet Monastery
- case GOSSIP_ACTION_INFO_DEF + 14:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, 2870.7f, -759.2f, 160.6f, 5.05f);
- break;
- //Uldaman
- case GOSSIP_ACTION_INFO_DEF + 15:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -6068.2f, -2955.4f, 210.1f, 0.1f);
- break;
- //Temple
- case GOSSIP_ACTION_INFO_DEF + 16:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -10470.8f, -3818.7f, 29.3f, 6.004f);
- break;
- //Blackrock
- case GOSSIP_ACTION_INFO_DEF + 17:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -7708.9f, -1088.03f, 218.1f, 5.9f);
- break;
- //Stratholme
- case GOSSIP_ACTION_INFO_DEF + 18:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, 3352.9f, -3379.03f, 145.1f, 6.2f);
- break;
- //Scholomance
- case GOSSIP_ACTION_INFO_DEF + 19:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, 1268.3f, -2556.2f, 94.3f, 0.4f);
- break;
- //Magisters' Terrace
- case GOSSIP_ACTION_INFO_DEF + 20:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 12886.2f, -7331.8f, 66.2f, 4.3f);
- break;
- //Ragefire
- case GOSSIP_ACTION_INFO_DEF + 21:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, 1811.1f, -4410.01f, -18.07f, 5.03f);
- break;
- //Wailing Caverns
- case GOSSIP_ACTION_INFO_DEF + 22:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -739.7f, -2216.8f, 16.9f, 2.5f);
- break;
- //Blackfathom Deeps
- case GOSSIP_ACTION_INFO_DEF + 23:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, 4248.2f, 743.9f, -24.1f, 1.2f);
- break;
- //Razorfen Kraul
- case GOSSIP_ACTION_INFO_DEF + 24:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -4463.5, -1664.5f, 82.4f, 0.89f);
- break;
- //Razorfen Downs
- case GOSSIP_ACTION_INFO_DEF + 25:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -4653.9f, -2487.7f, 82.2f, 5.5f);
- break;
- //Zul'Farrak
- case GOSSIP_ACTION_INFO_DEF + 26:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -6799.8f, -2891.1f, 9.5f, 6.2f);
- break;
- //Maraudon
- case GOSSIP_ACTION_INFO_DEF + 27:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -1423.4f, 2992.5f, 137.08f, 1.5f);
- break;
- //DireMaul
- case GOSSIP_ACTION_INFO_DEF + 28:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -3520.2f, 1080.2f, 161.9f, 4.7f);
- break;
- //Caverns Of Time
- case GOSSIP_ACTION_INFO_DEF + 29:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -8174.2f, -4736.95f, 34.3f, 4.96f);
- break;
- //Hellfire Citadel
- case GOSSIP_ACTION_INFO_DEF + 30:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -390.86f, 3130.6f, 4.5f, 0.2f);
- break;
- //Coilfang Reservoir
- case GOSSIP_ACTION_INFO_DEF + 31:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 731.3f, 6865.7f, -69.4f, 6.2f);
- break;
- //Auchindoun
- case GOSSIP_ACTION_INFO_DEF + 32:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -3322.5f, 4941.3f, -100.5f, 3.7f);
- break;
- //Tempest Keep
- case GOSSIP_ACTION_INFO_DEF + 33:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 3100.7f, 1538.8f, 190.8f, 1.4f);
- break;
- //Upper Blackrock Spire
- case GOSSIP_ACTION_INFO_DEF + 34:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -7534.7, -1212.6f, 285.4f, 5.2f);
- break;
- //Zul'Gurub
- case GOSSIP_ACTION_INFO_DEF + 35:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -11916.7f, -1215.7f, 92.6f, 4.7f);
- break;
- //Molten Core
- case GOSSIP_ACTION_INFO_DEF + 36:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(230, 1117.3f, -461.2f, -102.6f, 3.5f);
- break;
- //Blackwing Lair
- case GOSSIP_ACTION_INFO_DEF + 37:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(229, 174.7f, -474.6f, 117.5f, 6.2f);
- break;
- //Naxxramas
- case GOSSIP_ACTION_INFO_DEF + 38:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, 3095.829102f, -3741.554199f, 133.292892f, 0.237340f);
- break;
- //Karazhan
- case GOSSIP_ACTION_INFO_DEF + 39:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -11119.2f, -2011.3f, 47.6f, 0.6f);
- break;
- //Sunwell
- case GOSSIP_ACTION_INFO_DEF + 40:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 12565.1f, -6774.9f, 15.9f, 3.1f);
- break;
- //Onyxia's Lair
- case GOSSIP_ACTION_INFO_DEF + 41:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -4708.2, -3727.6f, 55.4f, 3.7f);
- break;
- //Ruins of Ahn'Qiraj
- case GOSSIP_ACTION_INFO_DEF + 42:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -8412.6f, 1501.3f, 30.1f, 2.6f);
- break;
- //Temple of Ahn'Qiraj
- case GOSSIP_ACTION_INFO_DEF + 43:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -8240.08f, 1991.3f, 129.6f, 0.9f);
- break;
- //Zul'Aman
- case GOSSIP_ACTION_INFO_DEF + 44:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 6851.7f, -7972.5f, 179.9f, 4.6f);
- break;
- //Hyjal
- case GOSSIP_ACTION_INFO_DEF + 45:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(1, -8177.8f, -4181.2f, -166.7f, 0.9f);
- break;
- //Gruul's Lair
- case GOSSIP_ACTION_INFO_DEF + 46:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 3530.06f, 5104.08f, 4.3f, 5.5f);
- break;
- //Magtheridon's Lair
- case GOSSIP_ACTION_INFO_DEF + 47:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -312.7f, 3087.2f, -115.8f, 5.1f);
- break;
- //Serpentshrine Cavern
- case GOSSIP_ACTION_INFO_DEF + 48:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 731.3f, 6865.7f, -69.4f, 6.2f);
- break;
- //The Eye
- case GOSSIP_ACTION_INFO_DEF + 49:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, 3090.3f, 1406.1f, 189.9f, 4.5f);
- break;
- //Black Temple
- case GOSSIP_ACTION_INFO_DEF + 50:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(530, -3648.1f, 316.7f, 35.7f, 2.99f);
- break;
- //BEGIN PLAYER TOOLS
- //Buff
- case GOSSIP_ACTION_INFO_DEF + 51:
- player->CastSpell(player, BUFF1, true);
- player->CastSpell(player, BUFF2, true);
- player->CastSpell(player, BUFF3, true);
- player->CastSpell(player, BUFF4, true);
- player->CastSpell(player, BUFF5, true);
- player->CLOSE_GOSSIP_MENU();
- break;
- //Regenerate
- case GOSSIP_ACTION_INFO_DEF + 52:
- player->SetHealth(player->GetMaxHealth());
- player->SetPower(POWER_MANA, player->GetMaxPower(POWER_MANA));
- player->CLOSE_GOSSIP_MENU();
- break;
- //Cooldown
- case GOSSIP_ACTION_INFO_DEF + 53:
- player->RemoveAllSpellCooldown();
- player->CLOSE_GOSSIP_MENU();
- break;
- //BEGIN PVP ARENAS
- //PVP Gurubashi Arena
- case GOSSIP_ACTION_INFO_DEF + 56:
- player->CLOSE_GOSSIP_MENU();
- player->TeleportTo(0, -13240.772461f, 201.324463f, 30.901804f, 1.099158f);;
- break;
- }
- }
- bool GossipSelect_teleporter(Player *player, Creature *_Creature, uint32 sender, uint32 action )
- {
- switch (sender)
- {
- case GOSSIP_SENDER_MAIN: SendSubMenu_teleporter(player, _Creature, action); break;
- case GOSSIP_SENDER_ACTION: SendActionMenu_teleporter(player, _Creature, action); break;
- case GOSSIP_SENDER_DUNGEON: SendSubDungeonMenu_teleporter(player, _Creature, action); break;
- case GOSSIP_SENDER_START: GossipHello_teleporter(player,_Creature); break;
- }
- return true;
- }
- void AddSC_teleport_npc()
- {
- Script *newscript;
- newscript = new Script;
- newscript->Name="teleport_npc";
- newscript->pGossipHello = &GossipHello_teleporter;
- newscript->pGossipSelect = &GossipSelect_teleporter;
- newscript->RegisterSelf();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement