Mercurial > wow > worldplan
diff FlightMap.lua @ 40:589c444d4837
WowAce/Curseforge migration push
author | Nenue |
---|---|
date | Sun, 25 Dec 2016 13:04:57 -0500 |
parents | a93cae445d3f |
children | dbd81d49af02 |
line wrap: on
line diff
--- a/FlightMap.lua Fri Nov 04 02:54:32 2016 -0400 +++ b/FlightMap.lua Sun Dec 25 13:04:57 2016 -0500 @@ -1,4 +1,4 @@ - +local _, db = ... local print = DEVIAN_WORKSPACE and function(...) _G.print('Canvas', ...) end or function() end local wprint = DEVIAN_WORKSPACE and function(...) _G.print('WP', ...) end or function() end local wipe, pairs, ipairs = wipe, pairs, ipairs @@ -36,6 +36,13 @@ end end +function WorldPlanDataProvider:OnLoad() + + self:SetNudgeTargetFactor(0.015); + self:SetNudgeZoomedOutFactor(1.0); + self:SetNudgeZoomedInFactor(0.25); +end + function WorldPlanDataProvider:OnShow() assert(self.ticker == nil); self.ticker = C_Timer.NewTicker(10, function() self:RefreshAllData() end); @@ -69,7 +76,9 @@ for questId in pairs(self.activePins) do pinsToRemove[questId] = true; end - + print(unpack(db.Config.FlightMapAlphaLimits)) + local alpha1, alpha2, alpha3 = unpack(db.Config.FlightMapAlphaLimits) + local scale1, scale2, scale3 = unpack(db.Config.FlightMapScalingLimits) local mapAreaID = self:GetMap():GetMapID(); for zoneIndex = 1, C_MapCanvas.GetNumZones(mapAreaID) do @@ -82,8 +91,11 @@ for i, info in ipairs(taskInfo) do if HaveQuestData(info.questId) then if QuestUtils_IsQuestWorldQuest(info.questId) then - local pin = WorldPlanQuests:AcquirePin(info.questId, zoneMapID) - pin:RefreshData(info) + local pin = db.QuestsByID[info.questId] + if not db.QuestsByID[info.questId] then + pin = WorldPlanQuests:AcquirePin(info, zoneMapID) + end + pin:IsShowable() if pin.used then print(i, pin.x, pin.y, pin.used, pin.isNew, pin.isStale, pin:IsShown(), pin:GetAlpha()) @@ -92,8 +104,10 @@ local frame = self.activePins[info.questId] if not frame then frame = self:GetMap():AcquirePin("WorldPlanFlightPin") - frame:SetAlphaLimits(1, 0.7, 1) - frame:SetScalingLimits(1, 3, 1.5); + print(alpha1, alpha2, alpha3) + print(scale1, scale2, scale3) + frame:SetAlphaLimits(alpha1, alpha2, alpha3) + frame:SetScalingLimits(scale1, scale2, scale3); frame:SetFrameLevel(1000 + self:GetMap():GetNumActivePinsByTemplate("WorldPlanFlightPin")); frame:Show() self.activePins[info.questId] = frame @@ -101,7 +115,7 @@ frame:SetPosition(info.x, info.y) frame.pin = pin - pin.owningFrame = self:GetMap() + pin.owningFrame = frame:GetMap() pin.isStale = true pin:SetParent(frame) pin:ClearAllPoints() @@ -127,21 +141,15 @@ end function WorldPlanDataProvider:OnEvent() - for pin in self:GetMap():EnumeratePinsByTemplate("WorldQuestPinTemplate") do - pin:Hide() - end end function WorldPlanDataPinMixin:OnShow() - print('|cFFFFFF00'..tostring(self:GetName())..':OnShow()|r') end function WorldPlanDataPinMixin:OnMouseEnter () - end function WorldPlanDataPinMixin:OnMouseLeave () - end function WorldPlanDataPinMixin:RemoveAllData()