Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*******************************************************
- * File:'teleporter.cpp'
- * ScriptName:'teleport_npc'
- * Complete:'100%'
- *******************************************************/
- /*******************************************************/
- #include "ScriptPCH.h"
- #define BUFF 15366 //SONGFLOWER SERENADE
- #define MAIN_GOSSIP_MENU 1
- #define SUB_GOSSIP_MENU 2
- #define DUNGEON_GOSSIP_MENU 3
- /*******************************************************/
- bool GossipHello_teleporter(Player* pPlayer, Creature* pCreature)
- {
- if(pPlayer->isInCombat())
- {
- pPlayer->GetSession()->SendNotification("You are in combat.");
- return false;
- }
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Capital cities" , MAIN_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 1);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Dungeons" , MAIN_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 2);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Raids" , MAIN_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 3);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Miscellanious" , MAIN_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 4);
- pPlayer->PlayerTalkClass->SendGossipMenu(1000000, pCreature->GetGUID());
- return true;
- }
- void SendSubMenu_teleporter(Player* pPlayer, Creature* pCreature, uint32 uiAction)
- {
- switch (uiAction)
- {
- case GOSSIP_ACTION_INFO_DEF + 1: //Capitals
- if(pPlayer->GetTeam() == ALLIANCE )
- {
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Stormwind" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 1);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Darnassus" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 2);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Ironforge" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 3);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Exodar" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 4);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Shattrath" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 9);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- }else{
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Orgrimmar" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 5);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Thunderbluff" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 6);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Undercity" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 7);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Silvermoon" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 8);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Shattrath" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 9);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- };
- break;
- case GOSSIP_ACTION_INFO_DEF + 2: //Dungeons
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Eastern Kingdoms" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 1);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Kalimdor" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 2);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Outland" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 3);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 3: //Raids
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Eastern Kingdoms" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 4);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Kalimdor" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 5);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Outland" , DUNGEON_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 6);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 4: //Misc.
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Songflower Serenade", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 51);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Regenerate" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 52);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Cooldown" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 53);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- }
- }
- void SendSubDungeonMenu_teleporter(Player* pPlayer, Creature* pCreature, uint32 uiAction)
- {
- switch (uiAction)
- {
- case GOSSIP_ACTION_INFO_DEF + 1: //EK
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "The Deadmines" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 10);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Shadowfang Keep" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 11);
- if(pPlayer->GetTeam() == ALLIANCE )
- {
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Stormwind Stockade", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 12);
- };
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Gnomeregan" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 13);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "The Scarlet Monastery", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 14);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Uldaman" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 15);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Temple of Atal'Hakkar", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 16);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Blackrock Mountain", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 17);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Stratholme" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 18);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Scholomance" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 19);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Magisters' Terrace", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 20);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 2: //K
- if(pPlayer->GetTeam() == HORDE )
- {
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Ragefire Chasm" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 21);
- };
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Wailing Caverns" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 22);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Blackfathom Deeps" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 23);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Razorfen Kraul" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 24);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Razorfen Downs" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 25);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Zul'Farrak" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 26);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Maraudon" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 27);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Dire Maul" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 28);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Caverns of Time" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 29);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 3: //O
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Hellfire Citadel" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 30);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Coilfang Reservoir", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 31);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Auchindoun" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 32);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Tempest Keep" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 33);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 4: //EK
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Upper Blackrock Spire", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 34);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Zul'Gurub" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 35);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Molten Core" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 36);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Blackwing Lair" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 37);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Naxxramas" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 38);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Karazhan" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 39);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Sunwell Plateau" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 40);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 5: //K
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Onyxia's Lair" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 41);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Ruins of Ahn'Qiraj", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 42);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Temple of Ahn'Qiraj", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 43);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Zul'Aman" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 44);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Battle for Mount Hyjal", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 45);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF + 6: //O
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Gruul's Lair" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 46);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Magtheridon's Lair", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 47);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Serpentshrine Cavern", SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 48);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "The Eye" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 49);
- pPlayer->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Black Temple" , SUB_GOSSIP_MENU, GOSSIP_ACTION_INFO_DEF + 50);
- pPlayer->PlayerTalkClass->SendGossipMenu(DEFAULT_GOSSIP_MESSAGE, pCreature->GetGUID());
- break;
- }
- }
- void SendActionMenu_teleporter(Player* pPlayer, Creature* pCreature, uint32 uiAction)
- {
- switch (uiAction)
- {
- case GOSSIP_ACTION_INFO_DEF + 1:
- pPlayer->CLOSE_GOSSIP_MENU(); //Stormwind
- pPlayer->TeleportTo(0, -8893.9f, 569.0f, 92.9f, 0.6f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 2:
- pPlayer->CLOSE_GOSSIP_MENU(); //Darnassus
- pPlayer->TeleportTo(1, 9952.1f, 2272.3f, 1341.7f, 1.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 3:
- pPlayer->CLOSE_GOSSIP_MENU(); //Ironforge
- pPlayer->TeleportTo(0, -4982.8f, -880.5f, 502.0f, 5.3f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 4:
- pPlayer->CLOSE_GOSSIP_MENU(); //Exodar
- pPlayer->TeleportTo(530, -3863.5f, -11742.6f, -106.5f, 2.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 5:
- pPlayer->CLOSE_GOSSIP_MENU(); //Orgrimmar
- pPlayer->TeleportTo(1, 1477.5f, -4417.5f, 25.9f, 0.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 6:
- pPlayer->CLOSE_GOSSIP_MENU(); //Thunderbluff
- pPlayer->TeleportTo(1, -1290.1f, 146.9f, 130.1f, 4.8f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 7:
- pPlayer->CLOSE_GOSSIP_MENU(); //Undercity
- pPlayer->TeleportTo(0, 1629.9f, 239.7f, -42.6f, 3.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 8:
- pPlayer->CLOSE_GOSSIP_MENU(); //Silvermoon
- pPlayer->TeleportTo(530, 9465.5f, -7278.2f, 14.7f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 9:
- pPlayer->CLOSE_GOSSIP_MENU(); //Shattrath
- pPlayer->TeleportTo(530, -1869.2f, 5441.3f, -9.9f, 5.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 10:
- pPlayer->CLOSE_GOSSIP_MENU(); //Deadmines
- pPlayer->TeleportTo(0, -11208.3f, 1672.4f, 25.0f, 1.4f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 11:
- pPlayer->CLOSE_GOSSIP_MENU(); //Shadowfang
- pPlayer->TeleportTo(0, -234.1f, 1563.3f, 77.3f, 1.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 12:
- pPlayer->CLOSE_GOSSIP_MENU(); //Stockade
- pPlayer->TeleportTo(0, -8769.2f, 842.5f, 90.1f, 0.6f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 13:
- pPlayer->CLOSE_GOSSIP_MENU(); //Gnome
- pPlayer->TeleportTo(0, -5162.9f, 926.06f, 257.6f, 1.4f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 14:
- pPlayer->CLOSE_GOSSIP_MENU(); //Monastery
- pPlayer->TeleportTo(0, 2870.7f, -759.2f, 160.6f, 5.05f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 15:
- pPlayer->CLOSE_GOSSIP_MENU(); //Uldaman
- pPlayer->TeleportTo(0, -6068.2f, -2955.4f, 210.1f, 0.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 16:
- pPlayer->CLOSE_GOSSIP_MENU(); //Temple
- pPlayer->TeleportTo(0, -10470.8f, -3818.7f, 29.3f, 6.004f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 17:
- pPlayer->CLOSE_GOSSIP_MENU(); //Blackrock
- pPlayer->TeleportTo(0, -7708.9f, -1088.03f, 218.1f, 5.9f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 18:
- pPlayer->CLOSE_GOSSIP_MENU(); //Stratholme
- pPlayer->TeleportTo(0, 3352.9f, -3379.03f, 145.1f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 19:
- pPlayer->CLOSE_GOSSIP_MENU(); //Scholomance
- pPlayer->TeleportTo(0, 1268.3f, -2556.2f, 94.3f, 0.4f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 20:
- pPlayer->CLOSE_GOSSIP_MENU(); //Magisters' Terrace
- pPlayer->TeleportTo(530, 12886.2f, -7331.8f, 66.2f, 4.3f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 21:
- pPlayer->CLOSE_GOSSIP_MENU(); //Ragefire
- pPlayer->TeleportTo(1, 1811.1f, -4410.01f, -18.07f, 5.03f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 22:
- pPlayer->CLOSE_GOSSIP_MENU(); //Wailing Caverns
- pPlayer->TeleportTo(1, -739.7f, -2216.8f, 16.9f, 2.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 23:
- pPlayer->CLOSE_GOSSIP_MENU(); //Blackfathom Deeps
- pPlayer->TeleportTo(1, 4248.2f, 743.9f, -24.1f, 1.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 24:
- pPlayer->CLOSE_GOSSIP_MENU(); //Razorfen Kraul
- pPlayer->TeleportTo(1, -4463.5, -1664.5f, 82.4f, 0.89f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 25:
- pPlayer->CLOSE_GOSSIP_MENU(); //Razorfen Downs
- pPlayer->TeleportTo(1, -4653.9f, -2487.7f, 82.2f, 5.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 26:
- pPlayer->CLOSE_GOSSIP_MENU(); //Zul'Farrak
- pPlayer->TeleportTo(1, -6799.8f, -2891.1f, 9.5f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 27:
- pPlayer->CLOSE_GOSSIP_MENU(); //Maraudon
- pPlayer->TeleportTo(1, -1423.4f, 2992.5f, 137.08f, 1.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 28:
- pPlayer->CLOSE_GOSSIP_MENU(); //DireMaul
- pPlayer->TeleportTo(1, -3520.2f, 1080.2f, 161.9f, 4.7f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 29:
- pPlayer->CLOSE_GOSSIP_MENU(); //Caverns Of Time
- pPlayer->TeleportTo(1, -8174.2f, -4736.95f, 34.3f, 4.96f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 30:
- pPlayer->CLOSE_GOSSIP_MENU(); //Hellfire Citadel
- pPlayer->TeleportTo(530, -390.86f, 3130.6f, 4.5f, 0.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 31:
- pPlayer->CLOSE_GOSSIP_MENU(); //Coilfang Reservoir
- pPlayer->TeleportTo(530, 731.3f, 6865.7f, -69.4f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 32:
- pPlayer->CLOSE_GOSSIP_MENU(); //Auchindoun
- pPlayer->TeleportTo(530, -3322.5f, 4941.3f, -100.5f, 3.7f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 33:
- pPlayer->CLOSE_GOSSIP_MENU(); //Tempest Keep
- pPlayer->TeleportTo(530, 3100.7f, 1538.8f, 190.8f, 1.4f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 34:
- pPlayer->CLOSE_GOSSIP_MENU(); //Upper Blackrock Spire
- pPlayer->TeleportTo(0, -7534.7, -1212.6f, 285.4f, 5.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 35:
- pPlayer->CLOSE_GOSSIP_MENU(); //Zul'Gurub
- pPlayer->TeleportTo(0, -11916.7f, -1215.7f, 92.6f, 4.7f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 36:
- pPlayer->CLOSE_GOSSIP_MENU(); //Molten Core
- pPlayer->TeleportTo(230, 1117.3f, -461.2f, -102.6f, 3.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 37:
- pPlayer->CLOSE_GOSSIP_MENU(); //Blackwing Lair
- pPlayer->TeleportTo(229, 174.7f, -474.6f, 117.5f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 38:
- pPlayer->CLOSE_GOSSIP_MENU(); //Naxxramas
- pPlayer->TeleportTo(533, 3005.9f, -3434.6f, 294.6f, 0.04f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 39:
- pPlayer->CLOSE_GOSSIP_MENU(); //Karazhan
- pPlayer->TeleportTo(0, -11119.2f, -2011.3f, 47.6f, 0.6f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 40:
- pPlayer->CLOSE_GOSSIP_MENU(); //Sunwell
- pPlayer->TeleportTo(530, 12565.1f, -6774.9f, 15.9f, 3.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 41:
- pPlayer->CLOSE_GOSSIP_MENU(); //Onyxia's Lair
- pPlayer->TeleportTo(1, -4708.2, -3727.6f, 55.4f, 3.7f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 42:
- pPlayer->CLOSE_GOSSIP_MENU(); //Ruins of Ahn'Qiraj
- pPlayer->TeleportTo(1, -8412.6f, 1501.3f, 30.1f, 2.6f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 43:
- pPlayer->CLOSE_GOSSIP_MENU(); //Temple of Ahn'Qiraj
- pPlayer->TeleportTo(1, -8240.08f, 1991.3f, 129.6f, 0.9f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 44:
- pPlayer->CLOSE_GOSSIP_MENU(); //Zul'Aman
- pPlayer->TeleportTo(530, 6851.7f, -7972.5f, 179.9f, 4.6f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 45:
- pPlayer->CLOSE_GOSSIP_MENU(); //Hyjal
- pPlayer->TeleportTo(1, -8177.8f, -4181.2f, -166.7f, 0.9f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 46:
- pPlayer->CLOSE_GOSSIP_MENU(); //Gruul's Lair
- pPlayer->TeleportTo(530, 3530.06f, 5104.08f, 4.3f, 5.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 47:
- pPlayer->CLOSE_GOSSIP_MENU(); //Magtheridon's Lair
- pPlayer->TeleportTo(530, -312.7f, 3087.2f, -115.8f, 5.1f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 48:
- pPlayer->CLOSE_GOSSIP_MENU(); //Serpentshrine Cavern
- pPlayer->TeleportTo(530, 731.3f, 6865.7f, -69.4f, 6.2f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 49:
- pPlayer->CLOSE_GOSSIP_MENU(); //The Eye
- pPlayer->TeleportTo(530, 3090.3f, 1406.1f, 189.9f, 4.5f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 50:
- pPlayer->CLOSE_GOSSIP_MENU(); //Black Temple
- pPlayer->TeleportTo(530, -3648.1f, 316.7f, 35.7f, 2.99f);
- break;
- case GOSSIP_ACTION_INFO_DEF + 51:
- pPlayer->CastSpell(pPlayer, BUFF, true);
- pPlayer->CLOSE_GOSSIP_MENU(); //Buff
- break;
- case GOSSIP_ACTION_INFO_DEF + 52:
- pPlayer->SetHealth(pPlayer->GetMaxHealth());
- pPlayer->SetPower(POWER_MANA, pPlayer->GetMaxPower(POWER_MANA));
- pPlayer->CLOSE_GOSSIP_MENU(); //Regenerate
- break;
- case GOSSIP_ACTION_INFO_DEF + 53:
- pPlayer->RemoveAllSpellCooldown();
- pPlayer->CLOSE_GOSSIP_MENU(); //Cooldown
- break;
- }
- }
- bool GossipSelect_teleporter(Player *player, Creature *_Creature, uint32 sender, uint32 action )
- {
- switch (sender)
- {
- case MAIN_GOSSIP_MENU: SendSubMenu_teleporter(player, _Creature, action); break;
- case SUB_GOSSIP_MENU: SendActionMenu_teleporter(player, _Creature, action); break;
- case DUNGEON_GOSSIP_MENU: SendSubDungeonMenu_teleporter(player, _Creature, action); 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