Code:
function WarpNPC_OnGossipTalk(pUnit, event, player, pMisc)
pUnit:GossipCreateMenu(99, player, 0)
pUnit:GossipMenuAddItem(3, "Leveling Road", 1, 0)
pUnit:GossipMenuAddItem(3, "Shopping Center", 2, 0)
pUnit:GossipMenuAddItem(3, "Custom City (Laggy)", 3, 0)
local race=player:GetPlayerRace()
if race==1 or race==3 or race==4 or race==7 or race==11 then
pUnit:GossipMenuAddItem(3, "Alliance Cities", 4, 0)
end
local race=player:GetPlayerRace()
if race==2 or race==5 or race==6 or race==8 or race==10 then
pUnit:GossipMenuAddItem(3, "Horde Cities", 5, 0)
end
pUnit:GossipMenuAddItem(3, "Shattrath City", 6, 0)
end
function WarpNPC_OnGossipSelect(pUnit, event, player, id, intid, code, pMisc)
if(intid ==1 ) then --Leveling Road
player:Teleport(1, 5458.404297, -3736.599609, 1593.439941)
pUnit:GossipComplete(player)
end
if(intid == 2) then --Mall
player:Teleport(0, 3488.580078, -3380.110107, 135.30299)
pUnit:GossipComplete(player)
end
if(intid == 3) then --Custom City
player:Teleport(1, -3738.399902,-692.807983, 177.082993)
pUnit:GossipComplete(player)
end
if(intid == 3) then --Shattrath
player:Teleport(530, -1884.236572, 5416.575195, -12.427720)
pUnit:GossipComplete(player)
end
if(intid == 4) then
pUnit:GossipCreateMenu(99, player, 0)
pUnit:GossipMenuAddItem(1, "Stormwind", 7, 0)
pUnit:GossipMenuAddItem(1, "Darnassus", 8, 0)
pUnit:GossipMenuAddItem(1, "Exodar", 9, 0)
pUnit:GossipMenuAddItem(1, "Ironforge", 10, 0)
pUnit:GossipSendMenu(player)
end
if(intid == 1) then
pUnit:GossipCreateMenu(99, player, 0)
pUnit:GossipMenuAddItem(1, "Undercity", 11, 0)
pUnit:GossipMenuAddItem(1, "Thunderbluff", 12, 0)
pUnit:GossipMenuAddItem(1, "Orgrimmar", 13, 0)
pUnit:GossipMenuAddItem(1, "Silvermoon", 14, 0)
pUnit:GossipSendMenu(player)
end
if(intid == 7) then --Stormwind
player:Teleport(0, -8913.23, 554.633, 94.7944)
pUnit:GossipComplete(player)
end
if(intid == 8) then --Darnassus
player:Teleport(1,9933.695313, 2494.189941, 1317.823364)
pUnit:GossipComplete(player)
end
if(intid ==9) then --Exodar
player:Teleport(530, -3868.061768, -11735.048828, -107.270622)
pUnit:GossipComplete(player)
end
if(intid == 10) then --Ironforge
player:Teleport(0, -4919.837891, -956.297607, 501.505859)
pUnit:GossipComplete(player)
end
if(intid == 11) then --Undercity
player:Teleport(0, 1564.626343, 240.506042, -43.539196)
pUnit:GossipComplete(player)
end
if(intid == 12) then --Thunderbluff
player:Teleport(1, -1203.377075, -41.101578, 161.549530)
pUnit:GossipComplete(player)
end
if(intid == 13) then --Orgrimmar
player:Teleport(1, 1515.337158, -4413.781738, 17.393652)
pUnit:GossipComplete(player)
end
if(intid == 14) then --Silvermoon
player:Teleport(530, 9888.708008, -7179.152832, 31.032106)
pUnit:GossipComplete(player)
end
end
RegisterUnitGossipEvent(50099, 1, "WarpNPC_OnGossipTalk")
RegisterUnitGossipEvent(50099, 2, "WarpNPC_OnGossipSelect")
Try this