#include "ScriptPCH.h"
class teleporter : public CreatureScript
{
public:
teleporter() : CreatureScript("teleporter") { }
bool OnGossipHello(Player * player, Creature * creature)
{
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Home", GOSSIP_SENDER_MAIN, 999);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Events", GOSSIP_SENDER_MAIN, 998);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Instances", GOSSIP_SENDER_MAIN, 997);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Whatever", GOSSIP_SENDER_MAIN, 996);
player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
return true;
}
bool OnGossipSelect(Player* player, Creature* creature, uint32 uiSender, uint32 uiAction)
{
player->PlayerTalkClass->ClearMenus();
switch(uiAction)
{
case 1:
player->TeleportTo(530, -248.0f, 956.0f, 84.3628f, 1.58766f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 2:
player->TeleportTo(1, 16226.200165f, 16257.000000f, 13.202200f, 1.650070f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 3:
player->TeleportTo(530, -3362.33f, 5221.16f, -101.048f, 1.57331f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 4:
player->TeleportTo(1, 4620.268066f, -3862.281738f, 944.372864f, 3.903039f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 5:
player->TeleportTo(169, 2733.717773f, -3319.352783f, 101.433815f, 0.035281f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 6:
player->TeleportTo(1, -8384.098633f, 1479.355835f, 15.379855f, 2.758327f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 7:
player->TeleportTo(1, 2908.416992f, 2920.595459f, 4.829908f, 1.249563f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 8:
player->TeleportTo(1, 2462.179932f, 2445.429932f, 131.414001f, 4.284460f);
player->PlayerTalkClass->SendCloseGossip();
break;
case 999:
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Home", GOSSIP_SENDER_MAIN, 999);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Events", GOSSIP_SENDER_MAIN, 998);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Instances", GOSSIP_SENDER_MAIN, 997);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Whatever", GOSSIP_SENDER_MAIN, 996);
player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
break;
case 998:
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "Stair of Destiny", GOSSIP_SENDER_MAIN, 1);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_DOT, "GM Island", GOSSIP_SENDER_MAIN, 2);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Auchenai Crypts", GOSSIP_SENDER_MAIN, 3);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Mount Hyjal", GOSSIP_SENDER_MAIN, 4);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Emerald Forest", GOSSIP_SENDER_MAIN, 5);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_BATTLE, "Ruins of Ahn'Qiraj", GOSSIP_SENDER_MAIN, 6);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_INTERACT_1, "Heavens Event", GOSSIP_SENDER_MAIN, 7);
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_INTERACT_1, "Maze Event", GOSSIP_SENDER_MAIN, 8);
player->PlayerTalkClass->SendGossipMenu(1, creature->GetGUID());
break;
case 997:
//
break;
case 996:
//
break;
}
return true;
}
};
void AddSC_teleporter()
{
new teleporter;
}