Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Variables
- local NPC_ID = 90001
- -- Triggers for Teleporter
- function GossipMenu(pUnit, event, pPlayer)
- pUnit:GossipCreateMenu(100, pPlayer, 0)
- pUnit:GossipMenuAddItem(2, "|cFF0000FFAlliance Cities", 101, 0)
- pUnit:GossipMenuAddItem(2, "|cFFFF0000Horde Cities", 102, 0)
- pUnit:GossipMenuAddItem(2, "|cFFFFFF00Neutral Cities", 103, 0)
- pUnit:GossipMenuAddItem(9, "Instances", 104, 0)
- pUnit:GossipMenuAddItem(9, "Raids", 105, 0)
- pUnit:GossipMenuAddItem(9, "Arena and Battlegrounds", 106, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- -- Submenus
- function GossipSubmenu(pUnit, event, pPlayer, id, intid, code)
- if (intid == 101) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(2, "Stormwind", 201, 0)
- pUnit:GossipMenuAddItem(2, "IronForge", 202, 0)
- pUnit:GossipMenuAddItem(2, "Darnassus", 203, 0)
- pUnit:GossipMenuAddItem(2, "The Exodar", 204, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 998, 0) -- Pointing to secondary "main" menu (intid 998)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 102) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(2, "Undercity", 301, 0)
- pUnit:GossipMenuAddItem(2, "Orgrimmar", 302, 0)
- pUnit:GossipMenuAddItem(2, "Silvermoon", 303, 0)
- pUnit:GossipMenuAddItem(2, "Thunder Bluff", 304, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 998, 0) -- Pointing to secondary "main" menu (intid 998)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 103) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(2, "Dalaran", 401, 0)
- pUnit:GossipMenuAddItem(2, "Shattrath", 402, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 998, 0) -- Pointing to secondary "main" menu (intid 998)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 104) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "Instances Level 11-40", 501, 0)
- pUnit:GossipMenuAddItem(9, "Instances Level 41-70", 502, 0)
- pUnit:GossipMenuAddItem(9, "Instances Level 71-80", 503, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 998, 0) -- Pointing to secondary "main" menu (intid 998)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 105) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "Vanilla Raids", 601, 0)
- pUnit:GossipMenuAddItem(9, "The Burning Crusade Raids", 602, 0)
- pUnit:GossipMenuAddItem(9, "Wrath of the Lich King Raids", 603, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 998, 0) -- Pointing to secondary "main" menu (intid 998)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 106) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- -- SubSubmenus
- -- Instance subsubmenu
- if (intid == 501) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(13-16) Ragefire Chasm", 5001, 0)
- pUnit:GossipMenuAddItem(9, "|cFF0000FF(17-20) Deadmines", 5002, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(17-20) Wailing Caverns", 5003, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(18-21) Shadowfang Keep", 5004, 0)
- pUnit:GossipMenuAddItem(9, "(21-24) Blackfathom Deeps", 5005, 0)
- pUnit:GossipMenuAddItem(9, "|cFF0000FF(22-25) The Stockade", 5006, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(24-27) Razorfen Kraul", 5007, 0)
- pUnit:GossipMenuAddItem(9, "|cFF0000FF(25-28) Gnomeragan", 5008, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(29-35) Scarlet Monastery", 5009, 0)
- pUnit:GossipMenuAddItem(9, "|cFFFF0000(34-37) Razorfen Downs", 5010, 0)
- pUnit:GossipMenuAddItem(9, "(37-40) Uldaman", 5011, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 502) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "(43-46) Zul'Farrak", 5012, 0)
- pUnit:GossipMenuAddItem(9, "(45-48) Maraudon", 5013, 0)
- pUnit:GossipMenuAddItem(9, "(47-50) Sunken Temple", 5014, 0)
- pUnit:GossipMenuAddItem(9, "(53-56) Blackrock Mountain", 5015, 0)
- pUnit:GossipMenuAddItem(9, "(55-65) Dire Maul", 5016, 0)
- pUnit:GossipMenuAddItem(9, "(55-65) Stratholme", 5017, 0)
- pUnit:GossipMenuAddItem(9, "(55-65) Scholomance", 5018, 0)
- pUnit:GossipMenuAddItem(9, "(59-75) Hellfire Citadel", 5019, 0)
- pUnit:GossipMenuAddItem(9, "(62-75) Coilfang Reservoir", 5020, 0)
- pUnit:GossipMenuAddItem(9, "(64-75) Auchindoun", 5021, 0)
- pUnit:GossipMenuAddItem(9, "(66-75) Caverns of Time", 5022, 0)
- pUnit:GossipMenuAddItem(9, "(67-75) Temperst Keep", 5023, 0)
- pUnit:GossipMenuAddItem(9, "(68-75) Magisters' Terrace", 5024, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 503) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "(69-80) Utgarde", 5025, 0)
- pUnit:GossipMenuAddItem(9, "(71-80) The Nexus", 5026, 0)
- pUnit:GossipMenuAddItem(9, "(72-75) Azjol-Nerub", 5027, 0)
- pUnit:GossipMenuAddItem(9, "(74-76) Drak'Tharon Keep", 5028, 0)
- pUnit:GossipMenuAddItem(9, "(75-77) The Violet Hold", 5029, 0)
- pUnit:GossipMenuAddItem(9, "(76-78) Gundrak", 5030, 0)
- pUnit:GossipMenuAddItem(9, "(77-80) Ulduar", 5031, 0)
- pUnit:GossipMenuAddItem(9, "(79-80) Icecrown: The Frozen Halls", 5032, 0)
- pUnit:GossipMenuAddItem(9, "(79-80) Trial of the Champion", 5033, 0)
- pUnit:GossipMenuAddItem(9, "(79-80) The Culling of Stratholme", 5034, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- -- Raids subsubmenu
- if (intid == 601) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "Blackwing Lair", 6001, 0)
- pUnit:GossipMenuAddItem(9, "Molten Core", 6002, 0)
- pUnit:GossipMenuAddItem(9, "Ahn'Qiraj", 6003, 0)
- pUnit:GossipMenuAddItem(9, "Zul'Gurub", 6004, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 602) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "Black Temple", 6005, 0)
- pUnit:GossipMenuAddItem(9, "Caverns of Time: Hyjal Summit", 6006, 0)
- pUnit:GossipMenuAddItem(9, "Coilfang Reservoir: Serpentshrine Cavern", 6007, 0)
- pUnit:GossipMenuAddItem(9, "Gruul's Lair", 6008, 0)
- pUnit:GossipMenuAddItem(9, "Hellfire Citadel: Magtheridon's Lair", 6009, 0)
- pUnit:GossipMenuAddItem(9, "Karazhan", 6010, 0)
- pUnit:GossipMenuAddItem(9, "Sunwell Plateau", 6011, 0)
- pUnit:GossipMenuAddItem(9, "Tempest Keep: The Eye", 6012, 0)
- pUnit:GossipMenuAddItem(9, "Zul'Aman", 6013, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 603) then
- pUnit:GossipCreateMenu(99, pPlayer, 0)
- pUnit:GossipMenuAddItem(9, "Ruby Sanctum", 6014, 0)
- pUnit:GossipMenuAddItem(9, "Icecrown Citadel", 6015, 0)
- pUnit:GossipMenuAddItem(9, "Onyxia's Lair", 6016, 0)
- pUnit:GossipMenuAddItem(9, "Trial of the Crusader", 6017, 0)
- pUnit:GossipMenuAddItem(9, "Vault of Archavon", 6018, 0)
- pUnit:GossipMenuAddItem(9, "Ulduar", 6019, 0)
- pUnit:GossipMenuAddItem(9, "Eye of Eternity", 6020, 0)
- pUnit:GossipMenuAddItem(9, "Obsidian Sanctum", 6021, 0)
- pUnit:GossipMenuAddItem(9, "Naxxramas", 6022, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- -- Alliance Cities Submenu
- if (intid == 201) then
- pPlayer:Teleport(0, -9097.097656, 410.506897, 92.346672, 0.636173)
- end
- if (intid == 202) then
- pPlayer:Teleport(0, -5025.391602, -828.789307, 495.314972, 5.332860)
- end
- if (intid == 203) then
- pPlayer:Teleport(1, 9953.144531, 2242.597412, 1333.742676, 1.661118)
- end
- if (intid == 204) then
- pPlayer:Teleport(530, -3993.284424, -11857.405273, 0.294113, 1.036726)
- end
- -- Horde Cities Submenu
- if (intid == 301) then
- pPlayer:Teleport(0, 1830.857000, 238.410660, 60.552223, 3.129816)
- end
- if (intid == 302) then
- pPlayer:Teleport(1, 1369.838501, -4373.277932, 26.054956, 0.118578)
- end
- if (intid == 303) then
- pPlayer:Teleport(530, 9339.971680, -7277.881836, 13.959989, 6.276899)
- end
- if (intid == 304) then
- pPlayer:Teleport(1, -1286.187500, 146.413681, 129.646484, 5.030490)
- end
- -- Neutral Cities Submenu
- if (intid == 401) then
- pPlayer:Teleport(571, 5815.270020, 473.489990, 658.796021, 4.660030)
- end
- if (intid == 402) then
- pPlayer:Teleport(530, -1527.330444, 5318.916016, 8.916401, 2.890269)
- end
- -- Instances Submenu
- if (intid == 5001) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5002) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5003) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5004) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5005) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5006) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5007) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5008) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5009) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5010) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5011) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5012) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5013) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5014) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5015) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5016) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5017) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5018) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5020) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5021) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5022) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5023) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5024) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5025) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5026) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5027) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5028) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5029) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5030) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5031) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5032) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5033) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 5034) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- -- Raids Submenu
- if (intid == 6001) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6002) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6003) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6004) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6005) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6006) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6007) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6008) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6009) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6010) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6011) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6012) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6013) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6014) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6015) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6016) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6017) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6018) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6019) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6020) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6021) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if (intid == 6022) then
- pPlayer:Teleport(m, x, y, z, o)
- end
- if(intid == 998)then -- main menu 2 (needed since we can't get back to the "GossipMenu" function from "GossipSubmenu" function)
- pUnit:GossipCreateMenu(100, pPlayer, 0)
- pUnit:GossipMenuAddItem(2, "|cFF0000FFAlliance Cities", 101, 0)
- pUnit:GossipMenuAddItem(2, "|cFFFF0000Horde Cities", 102, 0)
- pUnit:GossipMenuAddItem(2, "|cFFFFFF00Neutral Cities", 103, 0)
- pUnit:GossipMenuAddItem(9, "Instances", 104, 0)
- pUnit:GossipMenuAddItem(9, "Raids", 105, 0)
- pUnit:GossipMenuAddItem(9, "Arena and Battlegrounds", 106, 0)
- pUnit:GossipMenuAddItem(7, "Never mind", 999, 0)
- pUnit:GossipSendMenu(pPlayer)
- end
- if (intid == 999) then
- pPlayer:GossipComplete()
- end
- end
- -- RegisterUnitEvents
- RegisterUnitGossipEvent(90001, 1, "GossipMenu")
- RegisterUnitGossipEvent(90001, 2, "GossipSubmenu")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement