Code:
function On_Gossip(unit, event, player)
unit:GossipCreateMenu(3544, player, 0)
unit:GossipMenuAddItem(2, "Alliance Cities", 1, 0)
unit:GossipMenuAddItem(2, "Horde Cities", 2, 0)
unit:GossipMenuAddItem(2, "Eastern Kingdom Locations", 3, 0)
unit:GossipMenuAddItem(2, "Kalimdor Locations", 4, 0)
unit:GossipMenuAddItem(2, "Outland Locations", 5, 0)
unit:GossipMenuAddItem(2, "Azeroth Instances", 6, 0)
unit:GossipMenuAddItem(2, "Outland Instances", 7, 0)
unit:GossipMenuAddItem(2, "Gurubashi Arena", 420, 0)
unit:GossipMenuAddItem(2, "WOTLK Locations", 8, 0)
unit:GossipMenuAddItem(2, "WOTLK Instances", 9, 0)
unit:GossipMenuAddItem(2, "Remove Resurrection Sickness", 998, 0)
unit:GossipSendMenu(player)
end
function Gossip_Submenus(unit, event, player, id, intid, code)
if(intid == 999) then
function On_Gossip(unit, event, player)
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(2, "Alliance Cities", 1, 0)
unit:GossipMenuAddItem(2, "Horde Cities", 2, 0)
unit:GossipMenuAddItem(2, "Eastern Kingdom Locations", 3, 0)
unit:GossipMenuAddItem(2, "Kalimdor Locations", 4, 0)
unit:GossipMenuAddItem(2, "Outland Locations", 5, 0)
unit:GossipMenuAddItem(2, "Azeroth Instances", 6, 0)
unit:GossipMenuAddItem(2, "Outland Instances", 7, 0)
unit:GossipMenuAddItem(2, "Gurubashi Arena", 420, 0)
unit:GossipMenuAddItem(2, "WOTLK Locations", 8, 0)
unit:GossipMenuAddItem(2, "WOTLK Instances", 9, 0)
unit:GossipMenuAddItem(2, "Remove Resurrection Sickness", 10, 0)
unit:GossipSendMenu(player)
end
if(intid == 1) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Stormwind", 300, 0)
unit:GossipMenuAddItem(1, "Ironforge", 301, 0)
unit:GossipMenuAddItem(1, "Darnassus", 302, 0)
unit:GossipMenuAddItem(1, "Exodar", 303, 0)
unit:GossipMenuAddItem(1, "Mall", 418, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 2) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Orgrimmar", 304, 0)
unit:GossipMenuAddItem(1, "Thunder Bluff", 305, 0)
unit:GossipMenuAddItem(1, "Undercity", 306, 0)
unit:GossipMenuAddItem(1, "Silvermoon", 307, 0)
unit:GossipMenuAddItem(1, "Mall", 419, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 3) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Alterac Mountains", 308, 0)
unit:GossipMenuAddItem(1, "Arathi Highlands", 309, 0)
unit:GossipMenuAddItem(1, "Badlands", 310, 0)
unit:GossipMenuAddItem(1, "Burning Steppes", 311, 0)
unit:GossipMenuAddItem(1, "Deadwind Pass", 312, 0)
unit:GossipMenuAddItem(1, "Dun Morogh", 313, 0)
unit:GossipMenuAddItem(1, "Duskwood", 314, 0)
unit:GossipMenuAddItem(1, "Eastern Plaguelands", 315, 0)
unit:GossipMenuAddItem(1, "Elwynn Forest", 316, 0)
unit:GossipMenuAddItem(1, "Eversong Woods", 317, 0)
unit:GossipMenuAddItem(1, "Ghostlands", 318, 0)
unit:GossipMenuAddItem(1, "Hillsbrad Foothills", 319, 0)
unit:GossipMenuAddItem(1, "Hinterlands", 320, 0)
unit:GossipMenuAddItem(1, "Loch Modan", 321, 0)
unit:GossipMenuAddItem(1, "Searing Gorge", 322, 0)
unit:GossipMenuAddItem(1, "Silverpine Forest", 323, 0)
unit:GossipMenuAddItem(1, "Stranglethorn vale", 324, 0)
unit:GossipMenuAddItem(1, "Swamp of Sorrows", 325, 0)
unit:GossipMenuAddItem(1, "The Blasted Lands", 326, 0)
unit:GossipMenuAddItem(1, "Trisfal Glades", 327, 0)
unit:GossipMenuAddItem(1, "Western Plaguelands", 328, 0)
unit:GossipMenuAddItem(1, "Westfall", 329, 0)
unit:GossipMenuAddItem(1, "Wetlands", 330, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 4) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Ashenvale", 331, 0)
unit:GossipMenuAddItem(1, "Azshara", 332, 0)
unit:GossipMenuAddItem(1, "Azuremyst Isle", 333, 0)
unit:GossipMenuAddItem(1, "Bloodmyst Isle", 334, 0)
unit:GossipMenuAddItem(1, "Darkshore", 335, 0)
unit:GossipMenuAddItem(1, "Durotar", 336, 0)
unit:GossipMenuAddItem(1, "Desolace", 337, 0)
unit:GossipMenuAddItem(1, "Dustwallow Marsh", 338, 0)
unit:GossipMenuAddItem(1, "Felwood", 339, 0)
unit:GossipMenuAddItem(1, "Feralas", 340, 0)
unit:GossipMenuAddItem(1, "Moonglade", 341, 0)
unit:GossipMenuAddItem(1, "Mulgore", 342, 0)
unit:GossipMenuAddItem(1, "Silithus", 343, 0)
unit:GossipMenuAddItem(1, "Stonetalon Mountains", 344, 0)
unit:GossipMenuAddItem(1, "Tanaris", 345, 0)
unit:GossipMenuAddItem(1, "Teldrassil", 346, 0)
unit:GossipMenuAddItem(1, "The Barrens", 347, 0)
unit:GossipMenuAddItem(1, "Thousand Needles", 348, 0)
unit:GossipMenuAddItem(1, "Un Goro Crater", 349, 0)
unit:GossipMenuAddItem(1, "Winterspring", 350, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 5) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Blade's Edge Mountains", 351, 0)
unit:GossipMenuAddItem(1, "Hellfire Peninsula", 352, 0)
unit:GossipMenuAddItem(1, "Nagrand", 353, 0)
unit:GossipMenuAddItem(1, "Netherstorm", 354, 0)
unit:GossipMenuAddItem(1, "Shadowmoon Valley", 355, 0)
unit:GossipMenuAddItem(1, "Terokkar Forest", 356, 0)
unit:GossipMenuAddItem(1, "Zangarmarsh", 357, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 6) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Ahn'Qiraj", 358, 0)
unit:GossipMenuAddItem(1, "Blackfathom Depths", 359, 0)
unit:GossipMenuAddItem(1, "Blackrock Depths", 360, 0)
unit:GossipMenuAddItem(1, "Blackrock Spire", 361, 0)
unit:GossipMenuAddItem(1, "Blackwing Lair", 362, 0)
unit:GossipMenuAddItem(1, "Caverns of Time", 363, 0)
unit:GossipMenuAddItem(1, "Deadmines", 364, 0)
unit:GossipMenuAddItem(1, "Dire Maul", 365, 0)
unit:GossipMenuAddItem(1, "Gnomeregan", 366, 0)
unit:GossipMenuAddItem(1, "Maraudon", 367, 0)
unit:GossipMenuAddItem(1, "Molten Core", 368, 0)
unit:GossipMenuAddItem(1, "Onyxia's Lair", 369, 0)
unit:GossipMenuAddItem(1, "Ragefire Chasm", 370, 0)
unit:GossipMenuAddItem(1, "Razorfen Downs", 371, 0)
unit:GossipMenuAddItem(1, "Razorfen Kraul", 372, 0)
unit:GossipMenuAddItem(1, "Scarlet Monestary", 373, 0)
unit:GossipMenuAddItem(1, "Scholomance", 374, 0)
unit:GossipMenuAddItem(1, "Shadowfang Keep", 375, 0)
unit:GossipMenuAddItem(1, "Stratholme", 376, 0)
unit:GossipMenuAddItem(1, "Sunken Temple", 377, 0)
unit:GossipMenuAddItem(1, "Uldaman", 378, 0)
unit:GossipMenuAddItem(1, "Wailing Caverns", 379, 0)
unit:GossipMenuAddItem(1, "Zul'Aman", 380, 0)
unit:GossipMenuAddItem(1, "Zul'Farrak", 381, 0)
unit:GossipMenuAddItem(1, "Zul'Gurub", 382, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 7) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Auchenai Crypts", 383, 0)
unit:GossipMenuAddItem(1, "Black Temple", 384, 0)
unit:GossipMenuAddItem(1, "Coilfang Reservoir", 385, 0)
unit:GossipMenuAddItem(1, "Gruul's Lair", 386, 0)
unit:GossipMenuAddItem(1, "Hellfire Citadel", 387, 0)
unit:GossipMenuAddItem(1, "Mana Tombs", 388, 0)
unit:GossipMenuAddItem(1, "Pheonix Hall", 389, 0)
unit:GossipMenuAddItem(1, "Sethekk Halls", 390, 0)
unit:GossipMenuAddItem(1, "Shadow Labyrinth", 391, 0)
unit:GossipMenuAddItem(1, "The Botanica", 392, 0)
unit:GossipMenuAddItem(1, "The Mechanar", 393, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 8) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Dalaran", 403, 0)
unit:GossipMenuAddItem(1, "DK Start Zone", 405, 0)
unit:GossipMenuAddItem(1, "Borean Tundra", 394, 0)
unit:GossipMenuAddItem(1, "Crystalsong Forest", 404, 0)
unit:GossipMenuAddItem(1, "Dragonblight", 395, 0)
unit:GossipMenuAddItem(1, "Grizzly Hills", 396, 0)
unit:GossipMenuAddItem(1, "Howling Fjord", 397, 0)
unit:GossipMenuAddItem(1, "Icecrown", 398, 0)
unit:GossipMenuAddItem(1, "Sholazar Basin", 399, 0)
unit:GossipMenuAddItem(1, "Storm Peaks", 400, 0)
unit:GossipMenuAddItem(1, "Wintergrasp", 401, 0)
unit:GossipMenuAddItem(1, "Zul'Drak", 402, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 9) then
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(1, "Azjol'Nerub", 406, 0)
unit:GossipMenuAddItem(1, "Drak'Tharon", 407, 0)
unit:GossipMenuAddItem(1, "Gun'Drak", 408, 0)
unit:GossipMenuAddItem(1, "Icecrown Citadel", 409, 0)
unit:GossipMenuAddItem(1, "Naxxaramas", 410, 0)
unit:GossipMenuAddItem(1, "Obsidian Sanctum", 411, 0)
unit:GossipMenuAddItem(1, "The Nexus/Occulus/Eye of Eternity", 412, 0)
unit:GossipMenuAddItem(1, "Halls of Stone/Halls of Lightning", 413, 0)
unit:GossipMenuAddItem(1, "Utgarde Keep", 414, 0)
unit:GossipMenuAddItem(1, "Utgarde Pinnacle", 415, 0)
unit:GossipMenuAddItem(1, "Vault of Archevon", 416, 0)
unit:GossipMenuAddItem(1, "Violet Hold", 417, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 300) then
player:LearnSpell(15007)
player:UnlearnSpell(15007)
unit:GossipCreateMenu(3543, player, 0)
unit:GossipMenuAddItem(0, "[Back]", 999, 0)
unit:GossipSendMenu(player)
end
if(intid == 300) then
player:Teleport(0, -8928, 540, 95)
unit:GossipComplete(player)
end
if(intid == 301) then
player:Teleport(0, -4981, -881, 502)
unit:GossipComplete(player)
end
if(intid == 302) then
player:Teleport(1, 9978, 2033, 1328.5)
unit:GossipComplete(player)
end
if(intid == 303) then
player:Teleport(503, -4014, -11895, -1.5)
unit:GossipComplete(player)
end
if(intid == 304) then
player:Teleport(1, 1502, -4415, 22)
unit:GossipComplete(player)
end
if(intid == 305) then
player:Teleport(1, -1283, 158, 130)
unit:GossipComplete(player)
end
if(intid == 306) then
player:Teleport(0, 1752, 239, 61.5)
unit:GossipComplete(player)
end
if(intid == 307) then
player:Teleport(503, 9392, -7277, 14.5)
unit:GossipComplete(player)
end
if(intid == 308) then
player:Teleport(0, 237, -652, 119)
unit:GossipComplete(player)
end
if(intid == 309) then
player:Teleport(0, -1550, -2495, 55)
unit:GossipComplete(player)
end
if(intid == 310) then
player:Teleport(0, -6775, -3286, 242)
unit:GossipComplete(player)
end
if(intid == 311) then
player:Teleport(0, -7975, -1786, 133.5)
unit:GossipComplete(player)
end
if(intid == 312) then
player:Teleport(0, -10447, -1872, 105)
unit:GossipComplete(player)
end
if(intid == 313) then
player:Teleport(0, -5709, -1339, 395)
unit:GossipComplete(player)
end
if(intid == 314) then
player:Teleport(0, -10914, -528, 54)
unit:GossipComplete(player)
end
if(intid == 315) then
player:Teleport(0, 1739, -3623, 120)
unit:GossipComplete(player)
end
if(intid == 316) then
player:Teleport(0, -9591, -463, 58)
unit:GossipComplete(player)
end
if(intid == 317) then
player:Teleport(530, 8250, -7214, 140)
unit:GossipComplete(player)
end
if(intid == 318) then
player:Teleport(530, 6396, -6848, 101)
unit:GossipComplete(player)
end
if(intid == 319) then
player:Teleport(0, -440, -582, 54)
unit:GossipComplete(player)
end
if(intid == 320) then
player:Teleport(0, 235, -3298, 110)
unit:GossipComplete(player)
end
if(intid == 321) then
player:Teleport(0, -5853, -3251, 303)
unit:GossipComplete(player)
end
if(intid == 322) then
player:Teleport(0, -6645, -1918, 245)
unit:GossipComplete(player)
end
if(intid == 323) then
player:Teleport(0, 628, 1291, 87)
unit:GossipComplete(player)
end
if(intid == 324) then
player:Teleport(0, -14246, Y, Z)
unit:GossipComplete(player)
end
if(intid == 325) then
player:Teleport(0, -10476, -2408, 74)
unit:GossipComplete(player)
end
if(intid == 326) then
player:Teleport(0, -11189, -3023, 8)
unit:GossipComplete(player)
end
if(intid == 327) then
player:Teleport(0, 1599, 569, 38)
unit:GossipComplete(player)
end
if(intid == 328) then
player:Teleport(0, 1676, -1366, 70)
unit:GossipComplete(player)
end
if(intid == 329) then
player:Teleport(0, -10922, 998, 36)
unit:GossipComplete(player)
end
if(intid == 330) then
player:Teleport(0, -3604, -2711, 20)
unit:GossipComplete(player)
end
if(intid == 331) then
player:Teleport(1, 2319, -1672, 124)
unit:GossipComplete(player)
end
if(intid == 332) then
player:Teleport(1, 3336, -4599, 93)
unit:GossipComplete(player)
end
if(intid == 333) then
player:Teleport(530, -4540, -11933, 28)
unit:GossipComplete(player)
end
if(intid == 334) then
player:Teleport(530, -2721, -12206, 10)
unit:GossipComplete(player)
end
if(intid == 335) then
player:Teleport(1, 5084, 242, 29)
unit:GossipComplete(player)
end
if(intid == 336) then
player:Teleport(1, -548, 1276, 90)
unit:GossipComplete(player)
end
if(intid == 337) then
player:Teleport(1, 301, -4184, 28)
unit:GossipComplete(player)
end
if(intid == 338) then
player:Teleport(1, -3345, -3078, 33)
unit:GossipComplete(player)
end
if(intid == 339) then
player:Teleport(1, 5537, -585, 359)
unit:GossipComplete(player)
end
if(intid == 340) then
player:Teleport(1, -4811, 1037, 105)
unit:GossipComplete(player)
end
if(intid == 341) then
player:Teleport(1, 7931, -2616, 493)
unit:GossipComplete(player)
end
if(intid == 342) then
player:Teleport(1, -2372, -893, -9)
unit:GossipComplete(player)
end
if(intid == 343) then
player:Teleport(1, -6839, 763, 43)
unit:GossipComplete(player)
end
if(intid == 344) then
player:Teleport(1, 588, 330, 48)
unit:GossipComplete(player)
end
if(intid == 345) then
player:Teleport(1, -7149, -3746, 9)
unit:GossipComplete(player)
end
if(intid == 346) then
player:Teleport(1, 9947, 649, 1310)
unit:GossipComplete(player)
end
if(intid == 347) then
player:Teleport(1, 567, -2573, 96)
unit:GossipComplete(player)
end
if(intid == 348) then
player:Teleport(1, -4969, -1723, -61)
unit:GossipComplete(player)
end
if(intid == 349) then
player:Teleport(1, -7932, -2139, -230)
unit:GossipComplete(player)
end
if(intid == 350) then
player:Teleport(1, 6719, -4646, 722)
unit:GossipComplete(player)
end
if(intid == 351) then
player:Teleport(530, 2924, 5982, -1)
unit:GossipComplete(player)
end
if(intid == 352) then
player:Teleport(530, -220, 2217, 86)
unit:GossipComplete(player)
end
if(intid == 353) then
player:Teleport(530, -1525, 6571, 21)
unit:GossipComplete(player)
end
if(intid == 354) then
player:Teleport(530, 3052, 3670, 143)
unit:GossipComplete(player)
end
if(intid == 355) then
player:Teleport(530, -3693, 2344, 77)
unit:GossipComplete(player)
end
if(intid == 356) then
player:Teleport(530, -1975, 4516, 13)
unit:GossipComplete(player)
end
if(intid == 357) then
player:Teleport(530, -205, 5545, 24)
unit:GossipComplete(player)
end
if(intid == 358) then
player:Teleport(1, -8187, 1539, 5)
unit:GossipComplete(player)
end
if(intid == 359) then
player:Teleport(1, 4248, 736, -26)
unit:GossipComplete(player)
end
if(intid == 360) then
player:Teleport(0, -7187, -914, 166)
unit:GossipComplete(player)
end
if(intid == 361) then
player:Teleport(0, -7532, -1221, 286)
unit:GossipComplete(player)
end
if(intid == 362) then
player:Teleport(229, 137, -474, 117)
unit:GossipComplete(player)
end
if(intid == 363) then
player:Teleport(1, -8568, -4260, -213)
unit:GossipComplete(player)
end
if(intid == 364) then
player:Teleport(0, 11209, 1664, 25)
unit:GossipComplete(player)
end
if(intid == 365) then
player:Teleport(1, -3524, 1124, 162)
unit:GossipComplete(player)
end
if(intid == 366) then
player:Teleport(0, -5164, 918,258)
unit:GossipComplete(player)
end
if(intid == 367) then
player:Teleport(1, -1458, 2606, 76)
unit:GossipComplete(player)
end
if(intid == 368) then
player:Teleport(230, 1123, -455, -101)
unit:GossipComplete(player)
end
if(intid == 369) then
player:Teleport(1, -4709, -3729, 55)
unit:GossipComplete(player)
end
if(intid == 370) then
player:Teleport(1, 1805, -4404, -18)
unit:GossipComplete(player)
end
if(intid == 371) then
player:Teleport(1, -4661, -2511, 81)
unit:GossipComplete(player)
end
if(intid == 372) then
player:Teleport(1, -4473, -1690, 82)
unit:GossipComplete(player)
end
if(intid == 373) then
player:Teleport(0, 2841, -692, 140)
unit:GossipComplete(player)
end
if(intid == 374) then
player:Teleport(0, 1265, -2560, 95)
unit:GossipComplete(player)
end
if(intid == 375) then
player:Teleport(0, -241, 1545, 77)
unit:GossipComplete(player)
end
if(intid == 376) then
player:Teleport(0, 3345, -3380, 145)
unit:GossipComplete(player)
end
if(intid == 377) then
player:Teleport(0, -10457, -3828, 19)
unit:GossipComplete(player)
end
if(intid == 378) then
player:Teleport(0, -6704, -2955, 209)
unit:GossipComplete(player)
end
if(intid == 379) then
player:Teleport(1, -737, -2219, 17)
unit:GossipComplete(player)
end
if(intid == 380) then
player:Teleport(530, 6850, -7950, 171)
unit:GossipComplete(player)
end
if(intid == 381) then
player:Teleport(1, -6821, -2890, 9)
unit:GossipComplete(player)
end
if(intid == 382) then
player:Teleport(0, -11916, -1204, 93)
unit:GossipComplete(player)
end
if(intid == 383) then
player:Teleport(530, -3367, 5216, -101)
unit:GossipComplete(player)
end
if(intid == 384) then
player:Teleport(530, -3614, 310, 40)
unit:GossipComplete(player)
end
if(intid == 385) then
player:Teleport(530, 792, 6863, -64)
unit:GossipComplete(player)
end
if(intid == 386) then
player:Teleport(530, 3529, 5096, 3)
unit:GossipComplete(player)
end
if(intid == 387) then
player:Teleport(530, -343, 3051, -15)
unit:GossipComplete(player)
end
if(intid == 388) then
player:Teleport(530, -3100, 4950, -100)
unit:GossipComplete(player)
end
if(intid == 389) then
player:Teleport(530, 3084, 1385, 185)
unit:GossipComplete(player)
end
if(intid == 390) then
player:Teleport(530, -3364, 4675, -101)
unit:GossipComplete(player)
end
if(intid == 391) then
player:Teleport(530, -3630, 4941, -101)
unit:GossipComplete(player)
end
if(intid == 392) then
player:Teleport(530, 3404, 1488, 183)
unit:GossipComplete(player)
end
if(intid == 393) then
player:Teleport(530, 2870, 1557, 252)
unit:GossipComplete(player)
end
if(intid == 394) then
player:Teleport(571, 3008, 5290, 60)
unit:GossipComplete(player)
end
if(intid == 395) then
player:Teleport(571, 3118, 107, 72)
unit:GossipComplete(player)
end
if(intid == 396) then
player:Teleport(571, 3681, -3472, 243)
unit:GossipComplete(player)
end
if(intid == 397) then
player:Teleport(571, 1267, -4062, 143)
unit:GossipComplete(player)
end
if(intid == 398) then
player:Teleport(571, 7514, 2091, 623)
unit:GossipComplete(player)
end
if(intid == 399) then
player:Teleport(571, 5501, 4879, -198)
unit:GossipComplete(player)
end
if(intid == 400) then
player:Teleport(571, 7514, -1037, 467)
unit:GossipComplete(player)
end
if(intid == 401) then
player:Teleport(571, 4611, 2848, 3397)
unit:GossipComplete(player)
end
if(intid == 402) then
player:Teleport(571, 5441, -2304, 298)
unit:GossipComplete(player)
end
if(intid == 403) then
player:Teleport(571, 5797, 629, 648)
unit:GossipComplete(player)
end
if(intid == 404) then
player:Teleport(571, 5402, 72, 151)
unit:GossipComplete(player)
end
if(intid == 405) then
player:Teleport(609, 2353, -5666, 427)
unit:GossipComplete(player)
end
if(intid == 406) then
player:Teleport(571, 3721, 2155, 37)
unit:GossipComplete(player)
end
if(intid == 407) then
player:Teleport(571, 4897, 2046, 249)
unit:GossipComplete(player)
end
if(intid == 408) then
player:Teleport(571, 6925, 4447, 451)
unit:GossipComplete(player)
end
if(intid == 409) then
player:Teleport(571, 6151, 2244, 508)
unit:GossipComplete(player)
end
if(intid == 410) then
player:Teleport(571, 3668, -1049, 131)
unit:GossipComplete(player)
end
if(intid == 411) then
player:Teleport(571, 3561, 275, -115)
unit:GossipComplete(player)
end
if(intid == 412) then
player:Teleport(571, 3783, 6942, 105)
unit:GossipComplete(player)
end
if(intid == 413) then
player:Teleport(571, 8937, 1266, 1026)
unit:GossipComplete(player)
end
if(intid == 414) then
player:Teleport(571, 1228, -4943, 36)
unit:GossipComplete(player)
end
if(intid == 415) then
player:Teleport(571, 1274, -4857, 216)
unit:GossipComplete(player)
end
if(intid == 416) then
player:Teleport(571, 5440, 2840, 421)
unit:GossipComplete(player)
end
if(intid == 417) then
player:Teleport(571, 5708, 521, 650)
unit:GossipComplete(player)
end
if(intid == 418) then
player:Teleport(0, -4673, -1697, 504)
unit:GossipComplete(player)
end
if(intid == 419) then
player:Teleport(1, 7423, 1607, 179)
unit:GossipComplete(player)
end
if(intid == 420) then
player:Teleport(0, -13282, 117, 25)
unit:GossipComplete(player)
end
end
RegisterUnitGossipEvent(35001, 1, "On_Gossip")
RegisterUnitGossipEvent(35001, 2, "Gossip_Submenus")
Code 2:
Code:
local npcid = 35001
local menunum = 33310
local menuicon = 4
local teleicon = 2
local menu =
{
{"Alliance Cities",
{
{"Stormwind", 0, -9077.296875, 423.434479, 92.79048},
{"Ironforge", 0, -4989.347168, -872.971741, 496.984375},
{"Darnassus", 1, 9951.940430, 2280.126953, 1341.395386},
{"Exodar", 530, -4010.619141, -11886.310547, -1.610816},
{"Mall", 0, -4673, -1697, 504},
}
},
{"Horde Cities",
{
{"Orgrimmar", 1, 1502.709961, -4415.419922, 21.552349},
{"Undercity", 0, 1642.265381, 239.750000, 62.592251},
{"Thunder Bluff", 1, -1289.020020, 144.417999, 129.876007},
{"Silvermoon", 530, 9394.371094, -7278.359375, 14.239411},
{"Mall", 1, 7423, 1607, 179},
}
},
{"Gurubashi Arena", 0, -13282, 117, 25},
{"Eastern Kingdom Locations",
{
{"Alterac Mountains", 0, 237, -652, 119},
{"Arathi Highlands", 0, -1550, -2495, 55},
{"Badlands", 0, -6775, -3286, 242},
{"Burning Steppes", 0, -7975, -1786, 133.5},
{"Deadwind Pass", 0, -10447, -1872, 105},
{"Dun Morogh", 0, -5709, -1339, 395},
{"Duskwood", 0, -10914, -528, 54},
{"Eastern Plaguelands", 0, 1739, -3623, 120},
{"Elwynn Forest", 0, -9591, -463, 58},
{"Eversong Woods", 530, 8250, -7214, 140},
{"Ghostlands", 530, 6396, -6848, 101},
{"Hillsbrad Foothills", 0, -440, -582, 54},
{"Hinterlands", 0, 235, -3298, 110},
{"Loch Modan", 0, -5853, -3251, 303},
{"Searing Gorge", 0, -6645, -1918, 245},
{"Silverpine Forest", 0, 628, 1291, 87},
{"Stranglethorn Vale", 0, -14246, 301, 28},
{"Swamp of Sorrows", 0, -10476, -2408, 74},
{"The Blasted Lands", 0, -11189, -3023, 8},
{"Tirisfal Glades", 0, 1599, 569, 38},
{"Western Plaguelands", 0, 1676, -1366, 70},
{"Westfall", 0, -10922, 998, 36},
{"Wetlands", 0, -3604, -2711, 20},
}
},
{"Kalimdor Locations",
{
{"Ashenvale", 1, 2319, -1672, 124},
{"Azshara", 1, 3336, -4599, 93},
{"Azuremyst Isle", 530, -4540, -11933, 28},
{"Bloodmyst Isle", 530, -2721, -12206, 10},
{"Darkshore", 1, 5084, 242, 29},
{"Desolace", 1, -548, 1276, 90},
{"Durotar", 1, 301, -4184, 28},
{"Dustwallow Marsh", 1, -3345, -3078, 33},
{"Felwood", 1, 5537, -585, 359},
{"Feralas", 1, -4811, 1037, 105},
{"Moonglade", 1, 7931, -2616, 493},
{"Mulgore", 1, -2372, -893, -9},
{"SIlithus", 1, -6839, 763, 43},
{"Stonetalon Mountains", 1, 588, 330, 48},
{"Tanaris", 1, -7149, -3746, 9},
{"Teldrassil", 1, 9947, 649, 1310},
{"The Barrens", 1, 567, -2573, 96},
{"Thousand Needles", 1, -4969, -1723, -61},
{"Un Goro Crater", 1, -7932, -2139, -230},
{"Winterspring", 1, 6719, -4646, 722},
}
},
{"Outland Locations",
{
{"Blade's Edge Mountains", 530, 2924, 5982, -1},
{"Hellfire Peninsula", 530, -220, 2217, 86},
{"Nagrand", 530, -1525, 6571, 21},
{"Netherstorm", 530, 3052, 3670, 143},
{"Shadowmoon Valley", 530, -3693, 2344, 77},
{"Terokkar Forest", 530, -1975, 4516, 13},
{"Zangarmarsh", 530, -205, 5545, 24},
}
},
{"Azeroth Instances",
{
{"Ahn'Qiraj", 1, -8187, 1539, 5},
{"Blackfathom Depths", 1, 4248, 736, -26},
{"Blackrock Depths", 0, -7187, -914, 166},
{"Blackrock Spire", 0, -7532, -1221, 286},
{"Blackwing Lair", 229, 137, -474, 117},
{"Caverns of Time", 1, -8568, -4260, -213},
{"Deadmines", 0, 11209, 1664, 25},
{"Dire Maul", 1, -3524, 1124, 162},
{"Gnomeregen", 0, -5164, 918,258},
{"Maraudon", 1, -1458, 2606, 76},
{"Molten Core", 230, 1123, -455, -101},
{"Onyxia's Lair", 1, -4709, -3729, 55},
{"Ragefire Chasm", 1, 1805, -4404, -18},
{"Razorfen Downs", 1, -4661, -2511, 81},
{"Razorfen Kraul", 1, -4473, -1690, 82},
{"Scarlet Monestary", 0, 2841, -692, 140},
{"Scholomance", 0, 1265, -2560, 95},
{"Shadowfang Keep", 0, -241, 1545, 77},
{"Stratholme", 0, 3345, -3380, 145},
{"Sunken Temple", 0, -10457, -3828, 19},
{"Uldaman", 0, -6704, -2955, 209},
{"Wailing Caverns", 1, -737, -2219, 17},
{"Zul'Aman", 530, 6850, -7950, 171},
{"Zul'Farrak", 1, -6821, -2890, 9},
{"Zul'Gurub", 0, -11916, -1204, 93},
}
},
{"Outland Instances",
{
{"Auchenai Crypts", 530, -3367, 5216, -101},
{"Black Temple", 530, -3614, 310, 40},
{"Coilfang Reservior", 530, 792, 6863, -64},
{"Gruul's Lair", 530, 3529, 5096, 3},
{"Hellfire Citadel", 530, -343, 3051, -15},
{"Mana Tombs", 530, -3100, 4950, -100},
{"Pheonix Hall", 530, 3084, 1385, 185},
{"Sethekk Halls", 530, -3364, 4675, -101}
{"Shadow Labyrinth", 530, -3630, 4941, -101},
{"The Botanica", 530, 3404, 1488, 183},
{"The Mechanar", 530, 2870, 1557, 252},
}
},
{"WOTLK Locations",
{
{"Dalaran", 571, 5797, 629, 648},
{"DK Start Zone", 609, 2353, -5666, 427},
{"Borean Tundra", 571, 3008, 5290, 60},
{"Crystalsong Forest", 571, 5402, 72, 151},
{"Dragonblight", 571, 3118, 107, 72},
{"Grizzly Hills", 571, 3681, -3472, 243},
{"Howling Fjord", 571, 1267, -4062, 143},
{"Icecrown", 571, 7514, 2091, 623},
{"Sholazar Basin", 571, 5501, 4879, -198},
{"Storm Peaks", 571, 7514, -1037, 467},
{"Wintergrasp", 571, 4611, 2848, 3397},
{"Zul'Drak", 571, 5441, -2304, 298},
}
},
{"WOTLK Instances",
{
{"Azjol'Nerub", 571, 3721, 2155, 37},
{"Drak'Tharon", 571, 4897, 2046, 249},
{"Gun'Drak", 571, 6925, 4447, 451},
{"Icecrown Citadel", 571, 6151, 2244, 508},
{"Naxxaramas", 571, 3668, -1049, 131},
{"Obsidian Sanctum", 571, 3561, 275, -115},
{"The Nexus/Occulus/Eye of Eternity", 571, 3783, 6942, 105},
{"Halls of Stone/Halls of Lightning", 571, 8937, 1266, 1026},
{"Utgarde Keep", 571, 1228, -4943, 36},
{"Utgarde Pinnacle", 571, 1274, -4857, 216},
{"Vault of Archevon", 571, 5440, 2840, 421},
{"Violet Hold", 571, 5708, 521, 650},
}
},
}
function TeleNPC_MainMenu(Unit, Player)
local i = 0
Unit:GossipCreateMenu(menunum, Player, 0)
for k,v in pairs(menu) do
i = i + 1
if type(v[2]) == "table" then
Unit:GossipMenuAddItem(menuicon, v[1], i, 0)
i = i + #(v[2])
else
Unit:GossipMenuAddItem(teleicon, v[1], i, 0)
end
end
Unit:GossipSendMenu(Player)
end
function TeleNPC_SubMenu(Unit, Player, i, Submenu)
Unit:GossipCreateMenu(menunum-i, Player, 0)
Unit:GossipMenuAddItem(7, "<--Back", 0, 0)
for k,v in pairs(Submenu) do
i = i + 1
Unit:GossipMenuAddItem(teleicon, v[1], i, 0)
end
Unit:GossipSendMenu(Player)
end
function TeleNPC_OnGossipTalk(Unit, Event, Player)
TeleNPC_MainMenu(Unit, Player)
end
function TeleNPC_OnGossipSelect(Unit, Event, Player, MenuId, Id, Code)
local i = 0
if(Id == 0) then
TeleNPC_MainMenu(Unit,Player)
else
for k,v in pairs(menu) do
i = i + 1
if (Id == i) then
if type(v[2]) == "table" then
TeleNPC_SubMenu(Unit, Player, i, v[2])
else
if Player:IsInCombat() then
Unit:SendChatMessage(12, 0, "You can't teleport while in combat!")
else
Player:Teleport(v[2], v[3], v[4], v[5])
end
Unit:GossipComplete(Player)
end
return
elseif (type(v[2]) == "table") then
for j,w in pairs(v[2]) do
i = i + 1
if (Id == i) then
if Player:IsInCombat() then
Unit:SendChatMessage(12, 0, "You can't teleport while in combat!")
else
Player:Teleport(w[2], w[3], w[4], w[5])
end
Unit:GossipComplete(Player)
return
end
end
end
end
end
end
RegisterUnitGossipEvent(35001, 1, "TeleNPC_OnGossipTalk")
RegisterUnitGossipEvent(35001, 2, "TeleNPC_OnGossipSelect")