Code:
local NPC = {
TimeKeeper = 10855 -- npc id
}
GOSSIP_ICON_CHATBUBBLE = 0
GOSSIP_ICON_BAG = 1
GOSSIP_ICON_FLY = 2
GOSSIP_ICON_BOOK = 3
GOSSIP_ICON_COGGEAR1 = 4
GOSSIP_ICON_COGGEAR2 = 5
GOSSIP_ICON_COINBAG = 6
GOSSIP_ICON_CHATBUBBLEDOTS = 7
GOSSIP_ICON_TABARD = 8
GOSSIP_ICON_PVP = 9
GOSSIP_ICON_YELLOWDOT = 10
GOSSIP_EVENT_ON_HELLO = 1 -- // (event, player, object) - Object is the Creature/GameObject/Item. Can return false to do default action. For item gossip can return false to stop spell casting.
GOSSIP_EVENT_ON_SELECT = 2 -- // (event, player, object, sender, intid, code, menu_id) - Object is the Creature/GameObject/Item/Player, menu_id is only for player gossip. Can return false to do default action.
local function TimeKeeper1(event, player, pUnit)
player:GossipAddQuests(pUnit)
player:GossipMenuAddItem(GOSSIP_ICON_FLY, "Take me to The Corrupted Dragon [100 Scrap]", 0, 1, false, "Are you sure: The Corrupted Dragon\n[Costs 100 Scrap]?")
player:GossipMenuAddItem(GOSSIP_ICON_FLY, "Take me to The Zangarian Dream [100 Scrap]", 0, 2, false, "Are you sure: The Zangarian Dream\n[Costs 100 Scrap]?")
player:GossipMenuAddItem(GOSSIP_ICON_FLY, "Take me to The Crooked Warren [100 Scrap]", 0, 3, false, "Are you sure: The Crooked Warren\n[Costs 100 Scrap]?")
player:GossipMenuAddItem(GOSSIP_ICON_FLY, "Take me to The Sacred Hallow [100 Scrap]", 0, 4, false, "Are you sure: The Sacred Hallow\n[Costs 100 Scrap]?")
player:GossipMenuAddItem(GOSSIP_ICON_CHATBUBBLE, "Nevermind.", 0, 100)
player:GossipSendMenu(90055, pUnit)
end
local function TimeKeeper2(event, player, pUnit, sender, id, code)
if id == 1 then
-- do something
elseif id == 2 then
-- do something
elseif id == 3 then
-- do something
else
-- do something else
end
player:GossipComplete()
end
RegisterCreatureGossipEvent(NPC.TimeKeeper, GOSSIP_EVENT_ON_HELLO, TimeKeeper1)
RegisterCreatureGossipEvent(NPC.TimeKeeper, GOSSIP_EVENT_ON_SELECT, TimeKeeper2)