PHP Code:
#include "ScriptMgr.h"
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
#include "Player.h"
#include "Object.h"
#include "Item.h"
#include "Config.h"
#include <cstring>
#include "GossipDef.h"
/* Recoded by Shoxxo
Credits goes to Rochet2 for helping me!
Script works 100%
*/
class Teleporter : public CreatureScript
{
public: Teleporter() : CreatureScript("Teleporter") { }
bool OnGossipHello(Player* player, Creature* creature) override
{
if (player->GetTeam() == ALLIANCE)
{
/*Here was ClearGossipMenuFor*/ //I removed it !
AddGossipItemFor(player, 4, "Alliance Cities", GOSSIP_SENDER_MAIN, 1000);
AddGossipItemFor(player, 4, "Zum Playertreff", GOSSIP_SENDER_MAIN, 10000);
AddGossipItemFor(player, 4, "Neutral Cities", GOSSIP_SENDER_MAIN, 3000);
AddGossipItemFor(player, 4, "Dungeons", GOSSIP_SENDER_MAIN, 5000);
}
else
{
AddGossipItemFor(player, 4, "Horde Cities", GOSSIP_SENDER_MAIN, 2000);
AddGossipItemFor(player, 4, "Zum Playertreff", GOSSIP_SENDER_MAIN, 20000);
AddGossipItemFor(player, 4, "Neutral Cities", GOSSIP_SENDER_MAIN, 3000);
AddGossipItemFor(player, 4, "Dungeons", GOSSIP_SENDER_MAIN, 5000);
}
AddGossipItemFor(player, 9, "SWV Instance (Custom instance)", GOSSIP_SENDER_MAIN, 30000);
AddGossipItemFor(player, 9, "Gurbashi Arena - PvP", GOSSIP_SENDER_MAIN, 3500);
AddGossipItemFor(player, 10, "Remove Resurrection Sickness", GOSSIP_SENDER_MAIN, 4020);
AddGossipItemFor(player, 10, "Max My Skills", GOSSIP_SENDER_MAIN, 6776);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
return true;
}
void SendDefaultMenu(Player* player, Creature* creature, uint32 action)
{
if (player->IsInCombat())
{
CloseGossipMenuFor(player);
ChatHandler(player->GetSession()).SendSysMessage("Ich kann dir nicht helfen wenn du im Kampf bist!");
return;
}
switch (action)
{
case 1000: //Alliance Town
AddGossipItemFor(player, 10, "Darnassus", GOSSIP_SENDER_MAIN, 1001);
AddGossipItemFor(player, 10, "Exodar", GOSSIP_SENDER_MAIN, 1005);
AddGossipItemFor(player, 10, "Ironforge", GOSSIP_SENDER_MAIN, 1010);
AddGossipItemFor(player, 10, "Stormwind", GOSSIP_SENDER_MAIN, 1015);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 2000: //Horde Town
AddGossipItemFor(player, 10, "Orgrimmar", GOSSIP_SENDER_MAIN, 2001);
AddGossipItemFor(player, 10, "Silvermoon", GOSSIP_SENDER_MAIN, 2005);
AddGossipItemFor(player, 10, "Thunder Bluff", GOSSIP_SENDER_MAIN, 2010);
AddGossipItemFor(player, 10, "Undercity", GOSSIP_SENDER_MAIN, 2015);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 3000: //Neutral Town
if (player->getClass() == 6)
{
AddGossipItemFor(player, 10, "Ebon Hold", GOSSIP_SENDER_MAIN, 3001);
AddGossipItemFor(player, 10, "Booty Bay", GOSSIP_SENDER_MAIN, 3005);
AddGossipItemFor(player, 10, "Dalaran", GOSSIP_SENDER_MAIN, 3010);
AddGossipItemFor(player, 10, "Everlook", GOSSIP_SENDER_MAIN, 3015);
AddGossipItemFor(player, 10, "Gadegetzan", GOSSIP_SENDER_MAIN, 3020);
AddGossipItemFor(player, 10, "Mudsprocket", GOSSIP_SENDER_MAIN, 3025);
AddGossipItemFor(player, 10, "Ratchet", GOSSIP_SENDER_MAIN, 3030);
AddGossipItemFor(player, 10, "Shattrath City", GOSSIP_SENDER_MAIN, 3035);
AddGossipItemFor(player, 10, "Isle Of Quel'Danas", GOSSIP_SENDER_MAIN, 3040);
AddGossipItemFor(player, 4, "Dungeons ->", GOSSIP_SENDER_MAIN, 5000);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
}
else
{
AddGossipItemFor(player, 10, "Booty Bay", GOSSIP_SENDER_MAIN, 3005);
AddGossipItemFor(player, 10, "Dalaran", GOSSIP_SENDER_MAIN, 3010);
AddGossipItemFor(player, 10, "Everlook", GOSSIP_SENDER_MAIN, 3015);
AddGossipItemFor(player, 10, "Gadegetzan", GOSSIP_SENDER_MAIN, 3020);
AddGossipItemFor(player, 10, "Mudsprocket", GOSSIP_SENDER_MAIN, 3025);
AddGossipItemFor(player, 10, "Ratchet", GOSSIP_SENDER_MAIN, 3030);
AddGossipItemFor(player, 10, "Shattrath City", GOSSIP_SENDER_MAIN, 3035);
AddGossipItemFor(player, 10, "Isle Of Quel'Danas", GOSSIP_SENDER_MAIN, 3040);
AddGossipItemFor(player, 4, "Dungeons ->", GOSSIP_SENDER_MAIN, 5000);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
}
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5000: //Dungeons
AddGossipItemFor(player, 4, "Kalimdor ->", GOSSIP_SENDER_MAIN, 5010);
AddGossipItemFor(player, 4, "Eastern Kingdoms ->", GOSSIP_SENDER_MAIN, 5015);
AddGossipItemFor(player, 4, "Outland ->", GOSSIP_SENDER_MAIN, 5025);
AddGossipItemFor(player, 4, "Northrend ->", GOSSIP_SENDER_MAIN, 5030);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5005: //Back To Main Menu
if (player->GetTeam() == ALLIANCE)
{
AddGossipItemFor(player, 4, "Alliance Cities", GOSSIP_SENDER_MAIN, 1000);
AddGossipItemFor(player, 4, "Zum Playertreff", GOSSIP_SENDER_MAIN, 10000);
AddGossipItemFor(player, 4, "Neutral Cities", GOSSIP_SENDER_MAIN, 3000);
AddGossipItemFor(player, 4, "Dungeons", GOSSIP_SENDER_MAIN, 5000);
}
else // Main Menu for Horde
{
AddGossipItemFor(player, 4, "Horde Cities", GOSSIP_SENDER_MAIN, 2000);
AddGossipItemFor(player, 4, "Zum Playertreff", GOSSIP_SENDER_MAIN, 20000);
AddGossipItemFor(player, 4, "Neutral Cities", GOSSIP_SENDER_MAIN, 3000);
AddGossipItemFor(player, 4, "Dungeons", GOSSIP_SENDER_MAIN, 5000);
}
AddGossipItemFor(player, 9, "SWV Instance (Custom instance)", GOSSIP_SENDER_MAIN, 30000);
AddGossipItemFor(player, 9, "Gurbashi Arena - PvP", GOSSIP_SENDER_MAIN, 3500);
AddGossipItemFor(player, 10, "Remove Resurrection Sickness", GOSSIP_SENDER_MAIN, 4020);
AddGossipItemFor(player, 10, "Max My Skills", GOSSIP_SENDER_MAIN, 6776);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5010: //Kalimdor
AddGossipItemFor(player, 10, "Blackfathom Deeps", GOSSIP_SENDER_MAIN, 6001);
AddGossipItemFor(player, 10, "Caverns of Time", GOSSIP_SENDER_MAIN, 6005);
AddGossipItemFor(player, 10, "Dire Maul", GOSSIP_SENDER_MAIN, 6010);
AddGossipItemFor(player, 10, "Maraudon", GOSSIP_SENDER_MAIN, 6015);
AddGossipItemFor(player, 10, "Onyxia's Lair", GOSSIP_SENDER_MAIN, 6020);
AddGossipItemFor(player, 10, "Ragefire Chasm", GOSSIP_SENDER_MAIN, 6025);
AddGossipItemFor(player, 10, "Razorfen Downs", GOSSIP_SENDER_MAIN, 6030);
AddGossipItemFor(player, 10, "Razorfen Kraul", GOSSIP_SENDER_MAIN, 6035);
AddGossipItemFor(player, 10, "Ruins of Ahn'Qiraj", GOSSIP_SENDER_MAIN, 6040);
AddGossipItemFor(player, 10, "Temple of Ahn'Qiraj", GOSSIP_SENDER_MAIN, 6045);
AddGossipItemFor(player, 10, "Wailing Caverns", GOSSIP_SENDER_MAIN, 6050);
AddGossipItemFor(player, 10, "Zul'Farrak", GOSSIP_SENDER_MAIN, 6055);
AddGossipItemFor(player, 4, "<- Back", GOSSIP_SENDER_MAIN, 5000);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5015: //Eastern Kingdoms 1
AddGossipItemFor(player, 10, "Blackrock Depths", GOSSIP_SENDER_MAIN, 7001);
AddGossipItemFor(player, 10, "Blackrock Spire", GOSSIP_SENDER_MAIN, 7005);
AddGossipItemFor(player, 10, "Blackwing Lair", GOSSIP_SENDER_MAIN, 7010);
AddGossipItemFor(player, 10, "Deadmines", GOSSIP_SENDER_MAIN, 7015);
AddGossipItemFor(player, 10, "Gnomeregan", GOSSIP_SENDER_MAIN, 7020);
AddGossipItemFor(player, 10, "Isle Of Quel'Danas", GOSSIP_SENDER_MAIN, 7025);
AddGossipItemFor(player, 10, "Karazhan", GOSSIP_SENDER_MAIN, 7030);
AddGossipItemFor(player, 10, "Molten Core", GOSSIP_SENDER_MAIN, 7035);
AddGossipItemFor(player, 4, "More ->", GOSSIP_SENDER_MAIN, 5020);
AddGossipItemFor(player, 4, "<- Back", GOSSIP_SENDER_MAIN, 5000);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5020: //Eastern Kingdoms 2
AddGossipItemFor(player, 10, "Scarlet Monastery", GOSSIP_SENDER_MAIN, 7040);
AddGossipItemFor(player, 10, "Scholomance", GOSSIP_SENDER_MAIN, 7045);
AddGossipItemFor(player, 10, "Shadowfang Keep", GOSSIP_SENDER_MAIN, 7050);
AddGossipItemFor(player, 10, "Stratholme", GOSSIP_SENDER_MAIN, 7055);
AddGossipItemFor(player, 10, "Sunken Temple", GOSSIP_SENDER_MAIN, 7060);
AddGossipItemFor(player, 10, "The Stockade", GOSSIP_SENDER_MAIN, 7065);
AddGossipItemFor(player, 10, "Uldaman", GOSSIP_SENDER_MAIN, 7070);
AddGossipItemFor(player, 10, "Zul'Aman", GOSSIP_SENDER_MAIN, 7075);
AddGossipItemFor(player, 10, "Zul'Gurub", GOSSIP_SENDER_MAIN, 7080);
AddGossipItemFor(player, 4, "<- Back", GOSSIP_SENDER_MAIN, 5015);
AddGossipItemFor(player, 4, "<- Main Menu", GOSSIP_SENDER_MAIN, 5005);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5025: //Outland
AddGossipItemFor(player, 10, "Auchindoun", GOSSIP_SENDER_MAIN, 8001);
AddGossipItemFor(player, 10, "Black Temple", GOSSIP_SENDER_MAIN, 8005);
AddGossipItemFor(player, 10, "Coilfang Reservoir", GOSSIP_SENDER_MAIN, 8010);
AddGossipItemFor(player, 10, "Gruul's Lair", GOSSIP_SENDER_MAIN, 8015);
AddGossipItemFor(player, 10, "Hellfire Citadel", GOSSIP_SENDER_MAIN, 8020);
AddGossipItemFor(player, 10, "Tempest Keep", GOSSIP_SENDER_MAIN, 8025);
AddGossipItemFor(player, 4, "<- Back", GOSSIP_SENDER_MAIN, 5000);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
case 5030: //Northrend
AddGossipItemFor(player, 10, "Ahn'Kahet", GOSSIP_SENDER_MAIN, 9001);
AddGossipItemFor(player, 10, "Azjol-Nerub", GOSSIP_SENDER_MAIN, 9005);
AddGossipItemFor(player, 10, "Drak'Tharon Keep", GOSSIP_SENDER_MAIN, 9010);
AddGossipItemFor(player, 10, "Gun'Drak", GOSSIP_SENDER_MAIN, 9015);
AddGossipItemFor(player, 10, "Icecrown Citadel", GOSSIP_SENDER_MAIN, 9020);
AddGossipItemFor(player, 10, "Naxxramas", GOSSIP_SENDER_MAIN, 9025);
AddGossipItemFor(player, 10, "The Nexus", GOSSIP_SENDER_MAIN, 9030);
AddGossipItemFor(player, 10, "The Obsidian Sanctum", GOSSIP_SENDER_MAIN, 9035);
AddGossipItemFor(player, 10, "Utgarde Keep", GOSSIP_SENDER_MAIN, 9040);
AddGossipItemFor(player, 10, "Utgarde Pinnacle", GOSSIP_SENDER_MAIN, 9045);
AddGossipItemFor(player, 10, "Ulduar", GOSSIP_SENDER_MAIN, 9050);
AddGossipItemFor(player, 10, "Violet Hold", GOSSIP_SENDER_MAIN, 9055);
AddGossipItemFor(player, 4, "<- Back", GOSSIP_SENDER_MAIN, 5000);
SendGossipMenuFor(player, DEFAULT_GOSSIP_MESSAGE, creature->GetGUID());
break;
//////////////////////////////////////////////////ALLIANCE///////////////////////////////////////////////////////////////
case 1001: // Darnassus
CloseGossipMenuFor(player);
player->TeleportTo(1, 9947.52f, 2482.73f, 1316.21f, 0.0f);
break;
case 1005: // Exodar
CloseGossipMenuFor(player);
player->TeleportTo(530, -3954.20f, -11656.54f, -138.69f, 0.0f);
break;
case 1010: // Ironforge
CloseGossipMenuFor(player);
player->TeleportTo(0, -4924.07f, -951.95f, 501.55f, 5.40f);
break;
case 1015: // Stormwind
CloseGossipMenuFor(player);
player->TeleportTo(0, -8960.14f, 516.266f, 96.3568f, 0.0f);
break;
//////////////////////////////////////////////////HORDE///////////////////////////////////////////////////////////////
case 2001: // Orgrimmar
CloseGossipMenuFor(player);
player->TeleportTo(1, 1552.5f, -4420.66f, 8.94802f, 0.0f);
break;
case 2005: // Silvermoon
CloseGossipMenuFor(player);
player->TeleportTo(530, 9338.74f, -7277.27f, 13.7895f, 0.0f);
break;
case 2010: // Thunder Bluff
CloseGossipMenuFor(player);
player->TeleportTo(1, -1290.0f, 147.033997f, 129.682007f, 4.919000f);
break;
case 2015: // Undercity
CloseGossipMenuFor(player);
player->TeleportTo(0, 1819.71f, 238.79f, 60.5321f, 0.0f);
break;
//////////////////////////////////////////////////NEUTRAL///////////////////////////////////////////////////////////////
case 3001:// Ebon Hold
CloseGossipMenuFor(player);
player->TeleportTo(0, 2353.530029f, -5665.819824f, 426.028015f, 0.596f);
break;
case 3005:// Booty Bay
CloseGossipMenuFor(player);
player->TeleportTo(0, -14438.2f, 472.22f, 15.32f, 0.65f);
break;
case 3010: //Dalaran
CloseGossipMenuFor(player);
player->TeleportTo(571, 5819.08f, 643.99f, 647.80f, 3.32f);
break;
case 3015: //Everlook
CloseGossipMenuFor(player);
player->TeleportTo(1, 6724.77f, -4610.68f, 720.78f, 4.78f);
break;
case 3020: //Gadgetzan
CloseGossipMenuFor(player);
player->TeleportTo(1, -7173.26f, -3785.60f, 8.37f, 6.13f);
break;
case 3025: //Mudsprocket
CloseGossipMenuFor(player);
player->TeleportTo(1, -4564.79f, -3172.38f, 33.93f, 3.21f);
break;
case 3030: //Ratchet
CloseGossipMenuFor(player);
player->TeleportTo(1, -956.664f, -3754.71f, 5.33239f, 0.996637f);
break;
case 3035:// Shattrath City
CloseGossipMenuFor(player);
player->TeleportTo(530, -1850.209961f, 5435.821777f, -10.961435f, 3.403913f);
break;
case 3040:// Isle Of Quel'Danas
CloseGossipMenuFor(player);
player->TeleportTo(530, 12947.4f, -6893.31f, 5.68398f, 3.09154f);
break;
//////////////////////////////////////////////////KALIMDOR///////////////////////////////////////////////////////////////
case 6001:// Blackfathom Deeps
CloseGossipMenuFor(player);
player->TeleportTo(1, 4248.72f, 744.35f, -24.67f, 1.34f);
break;
case 6005:// Caverns of Time
CloseGossipMenuFor(player);
player->TeleportTo(1, -8173.66f, -4746.36f, 33.84f, 4.94f);
break;
case 6010:// Dire Maul
CloseGossipMenuFor(player);
player->TeleportTo(1, -3960.95f, 1130.64f, 161.05f, 0.0f);
break;
case 6015:// Maraudon
CloseGossipMenuFor(player);
player->TeleportTo(1, -1431.33f, 2962.34f, 98.23f, 4.74f);
break;
case 6020:// Onyxia's Lair
CloseGossipMenuFor(player);
player->TeleportTo(1, -4707.44f, -3726.82f, 54.6723f, 3.8f);
break;
case 6025:// Ragefire Chasm
CloseGossipMenuFor(player);
player->TeleportTo(1, 1814.47f, -4419.46f, -18.78f, 5.28f);
break;
case 6030:// Razorfen Downs
CloseGossipMenuFor(player);
player->TeleportTo(1, -4657.88f, -2525.59f, 81.4f, 4.16f);
break;
case 6035:// Razorfen Kraul
CloseGossipMenuFor(player);
player->TeleportTo(1, -4463.6f, -1664.53f, 82.26f, 0.85f);
break;
case 6040:// Ruins of Ahn'Qiraj
CloseGossipMenuFor(player);
player->TeleportTo(1, -8413.33f, 1501.27f, 29.64f, 2.61f);
break;
case 6045:// Temple of Ahn'Qiraj
CloseGossipMenuFor(player);
player->TeleportTo(1, -8245.837891f, 1983.736206f, 129.071686f, 0.936195f);
break;
case 6050:// Wailing Caverns
CloseGossipMenuFor(player);
player->TeleportTo(1, -722.53f, -2226.30f, 16.94f, 2.71f);
break;
case 6055:// Zul'Farrak
CloseGossipMenuFor(player);
player->TeleportTo(1, -6801.9f, -2890.22f, 8.88f, 6.25f);
break;
//////////////////////////////////////////////////EASTERN KINGDOMS///////////////////////////////////////////////////////////////
case 7001:// Blackrock Depths
CloseGossipMenuFor(player);
player->TeleportTo(0, -7180.57f, -920.04f, 165.49f, 5.02f);
break;
case 7005:// Blackrock Spire
CloseGossipMenuFor(player);
player->TeleportTo(0, -7526.77f, -1225.64f, 285.73f, 5.31f);
break;
case 7010:// Blackwing Lair
CloseGossipMenuFor(player);
player->TeleportTo(469, -7672.61f, -1107.21f, 396.65f, 3.75f);
break;
case 7015:// Deadmines
CloseGossipMenuFor(player);
player->TeleportTo(0, -11208.2f, 1675.92f, 24.57f, 1.48f);
break;
case 7020:// Gnomeregan
CloseGossipMenuFor(player);
player->TeleportTo(0, -5163.32f, 927.18f, 257.158f, 1.44f);
break;
case 7025:// Isle Of Quel'Danas
CloseGossipMenuFor(player);
player->TeleportTo(530, 13010.00f, -6907.64f, 9.58f, 4.58f);
break;
case 7030:// Karazhan
CloseGossipMenuFor(player);
player->TeleportTo(0, -11119.6f, -2011.42f, 47.09f, 0.65f);
break;
case 7035:// Molten Core
CloseGossipMenuFor(player);
player->TeleportTo(230, 1114.85f, -457.76f, -102.81f, 3.83f);
break;
case 7040:// Scarlet Monastery
CloseGossipMenuFor(player);
player->TeleportTo(0, 2843.89f, -693.74f, 139.32f, 5.11f);
break;
case 7045:// Scholomance
CloseGossipMenuFor(player);
player->TeleportTo(0, 1273.06f, -2574.01f, 92.66f, 2.06f);
break;
case 7050:// Shadowfang Keep
CloseGossipMenuFor(player);
player->TeleportTo(0, -239.54f, 1550.8f, 76.89f, 1.18f);
break;
case 7055:// Stratholme
CloseGossipMenuFor(player);
player->TeleportTo(0, 3370.76f, -3343.63f, 142.26f, 5.23f);
break;
case 7060:// Sunken Temple
CloseGossipMenuFor(player);
player->TeleportTo(0, -10346.92f, -3851.90f, -43.41f, 6.09f);
break;
case 7065:// The Stockade
CloseGossipMenuFor(player);
player->TeleportTo(0, -8766.89f, 844.6f, 88.43f, 0.69f);
break;
case 7070:// Uldaman
CloseGossipMenuFor(player);
player->TeleportTo(0, -6070.72f, -2955.33f, 209.78f, 0.05f);
break;
case 7075:// Zul'Aman
CloseGossipMenuFor(player);
player->TeleportTo(530, 6851.09f, -7979.71f, 183.54f, 4.72f);
break;
case 7080:// Zul'Gurub
CloseGossipMenuFor(player);
player->TeleportTo(0, -11916.4f, -1216.23f, 92.28f, 4.75f);
break;
//////////////////////////////////////////////////OUTLAND///////////////////////////////////////////////////////////////
case 8001:// Auchindoun
CloseGossipMenuFor(player);
player->TeleportTo(530, -3322.92f, 4931.02f, -100.56f, 1.86f);
break;
case 8005:// Black Temple
CloseGossipMenuFor(player);
player->TeleportTo(530, -3649.1f, 317.33f, 35.19f, 2.97f);
break;
case 8010:// Coilfang Reservoir
CloseGossipMenuFor(player);
player->TeleportTo(530, 721.08f, 6846.77f, -68.75f, 0.34f);
break;
case 8015:// Gruul's Lair
CloseGossipMenuFor(player);
player->TeleportTo(530, 3539.01f, 5082.36f, 1.69f, 0.0f);
break;
case 8020:// Hellfire Citadel
CloseGossipMenuFor(player);
player->TeleportTo(530, -292.71f, 3146.77f, 31.60f, 2.05f);
break;
case 8025:// Tempest Keep
CloseGossipMenuFor(player);
player->TeleportTo(530, 3087.62f, 1376.27f, 184.8f, 4.63f);
break;
//////////////////////////////////////////////////NORTHREND///////////////////////////////////////////////////////////////
case 9001:// Ahn'Kahet
CloseGossipMenuFor(player);
player->TeleportTo(571, 3646.76f, 2045.17f, 1.79f, 4.37f);
break;
case 9005:// Azjol-Nerub
CloseGossipMenuFor(player);
player->TeleportTo(571, 3675.43f, 2169.00f, 35.90f, 2.29f);
break;
case 9010:// Drak'Tharon Keep
CloseGossipMenuFor(player);
player->TeleportTo(571, 4450.86f, -2045.25f, 162.83f, 0.00f);
break;
case 9015:// Gun'Drak
CloseGossipMenuFor(player);
player->TeleportTo(571, 6937.54f, -4455.98f, 450.68f, 1.00f);
break;
case 9020:// Icecrown Citadel
CloseGossipMenuFor(player);
player->TeleportTo(571, 6139.24f, 2233.72f, 510.79f, 3.56f);
break;
case 9025:// Naxxramas
CloseGossipMenuFor(player);
player->TeleportTo(571, 3668.72f, -1262.46f, 243.622f, 4.785f);
break;
case 9030:// The Nexus
CloseGossipMenuFor(player);
player->TeleportTo(571, 3789.95f, 6961.48f, 104.23f, 0.28f);
break;
case 9035:// The Obsidian Sanctum
CloseGossipMenuFor(player);
player->TeleportTo(571, 3625.78f, 280.4f, -120.14f, 3.25f);
break;
case 9040:// Ulduar
CloseGossipMenuFor(player);
player->TeleportTo(571, 1219.72f, -4865.28f, 41.25f, 0.31f);
break;
case 9045:// Utgarde Keep
CloseGossipMenuFor(player);
player->TeleportTo(571, 1245.69f, -4856.59f, 216.86f, 3.45f);
break;
case 9050:// Utgarde Pinnacle
CloseGossipMenuFor(player);
player->TeleportTo(571, 8976.24f, -1281.33f, 1059.01f, 0.58f);
break;
case 9055:// Violet Hold
CloseGossipMenuFor(player);
player->TeleportTo(571, 5679.82f, 486.80f, 652.40f, 4.08f);
break;
//////////////////////////////////////////Player Tools////////////////////////////////////////////////////////
case 4020://Remove Res Sickness
if (player->HasAura(15007))
{
creature->CastSpell(player, 38588, false); // Healing effect
ChatHandler(player->GetSession()).SendSysMessage("You are now cleaned.");
player->RemoveAurasDueToSpell(15007);
CloseGossipMenuFor(player);
}
ChatHandler(player->GetSession()).SendSysMessage("Du hast keine Nachwirkungen.");
OnGossipHello(player, creature);
CloseGossipMenuFor(player);
return;
break;
// PLAYER TOOLS
case 3500: // Arena PvP Option
CloseGossipMenuFor(player);
player->TeleportTo(0, -13277.4f, 127.372f, 26.1418f, 1.11878f);
break;
case 6776:
{
player->UpdateSkillsToMaxSkillsForLevel();
ChatHandler(player->GetSession()).SendSysMessage("Deine Ferigkeiten wurden auf das Maxumim gesetzt !!!");
CloseGossipMenuFor(player);
}
break;
//////////////////////////////////////////Player Tools////////////////////////////////////////////////////////
case 10000:// Allianz Playertreff
CloseGossipMenuFor(player);
player->TeleportTo(0, 2918.74f, -1437.36f, 150.782f, 4.28161f);
break;
case 20000:// Horde Playertreff
CloseGossipMenuFor(player);
player->TeleportTo(1, 7447.3f, -1693.77f, 194.899f, 2.43468f);
break;
case 30000:// SWV instanz
CloseGossipMenuFor(player);
player->TeleportTo(0, -8645.188477f, 595.820679f, 95.705704f, 2.238403f);
break;
}
}
bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) override
{
player->PlayerTalkClass->ClearMenus();
if (sender == GOSSIP_SENDER_MAIN)
SendDefaultMenu(player, creature, action);
return true;
}
};
void AddSC_Teleporter()
{
new Teleporter();
}