From 6822d1d21da7e023ba2bd1bfa885021efeb5984c Mon Sep 17 00:00:00 2001 From: James Whitehead Ii Date: Thu, 11 Oct 2007 13:01:41 +0000 Subject: [PATCH] * Update world map waypoints to change with the map zoom, etc. --- TomTom_Waypoints.lua | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/TomTom_Waypoints.lua b/TomTom_Waypoints.lua index 04a551a..0dc5307 100644 --- a/TomTom_Waypoints.lua +++ b/TomTom_Waypoints.lua @@ -15,7 +15,7 @@ local pool = {} local Minimap_OnEnter,Minimap_OnLeave,Minimap_OnUpdate,Minimap_OnClick local Arrow_OnUpdate local Minimap_OnEvent -local World_OnEnter,World_OnLeave,World_OnClick +local World_OnEnter,World_OnLeave,World_OnClick,World_OnEvent -- pointObject = TomTom:SetWaypoint(c,z,x,y,far,near,arrive,callback) -- c (number) - The continent number @@ -86,9 +86,11 @@ function TomTom:SetWaypoint(c,z,x,y,far,near,arrive,callback) point.minimap:SetScript("OnUpdate", Minimap_OnUpdate) point.minimap:SetScript("OnClick", Minimap_OnClick) + point.world:RegisterEvent("WORLD_MAP_UPDATE") point.world:SetScript("OnEnter", World_OnEnter) point.world:SetScript("OnLeave", World_OnLeave) point.world:SetScript("OnClick", World_OnClick) + point.world:SetScript("OnEvent", World_OnEvent) -- Point from the icons/arrow into the data point.minimap.data = point @@ -262,4 +264,16 @@ do end end tooltip:SetScript("OnUpdate", Tooltip_OnUpdate) + + function World_OnEvent(self, event, ...) + if event == "WORLD_MAP_UPDATE" then + local data = self.data + local x,y = Astrolabe:PlaceIconOnWorldMap(WorldMapDetailFrame, self, data.c, data.z, data.x/100, data.y/100) + if (x and y and (0 < x and x <= 1) and (0 < y and y <= 1)) then + self:Show() + else + self:Hide() + end + end + end end -- 1.7.9.5