fix(map): apply quest-type filters to the minimap (#11)
Quest-type filters (Available Dungeon/Raid/PvP/Repeatable/Event quests and other ShouldBeHidden rules) were honored on the world map but not the minimap. At toggle time HideQuestIcons FakeHides both map and minimap filtered icons, but the minimap icon's per-frame FadeLogic re-showed any hidden icon once in range via 'elseif self.hidden then self:FakeShow()', undoing the filter on the minimap only (the world icon has no FadeLogic). FadeLogic now re-checks ShouldBeHidden before re-showing, in both the world-icon and manual-icon minimap fade paths, so filters apply to both.
This commit is contained in:
@@ -660,7 +660,14 @@ function QuestieMap:DrawManualIcon(data, areaID, x, y, typ)
|
||||
self:FakeHide()
|
||||
return
|
||||
elseif self.hidden then
|
||||
self:FakeShow()
|
||||
-- Only re-show icons that aren't filtered out (quest-type options
|
||||
-- like showDungeonQuests, enableMiniMapIcons, hideUntracked, etc.).
|
||||
-- Previously FadeLogic re-showed ANY FakeHidden minimap icon once in
|
||||
-- range, so the world-map quest-type filters never applied to the
|
||||
-- minimap. ShouldBeHidden mirrors the world-map draw-time check.
|
||||
if not self:ShouldBeHidden() then
|
||||
self:FakeShow()
|
||||
end
|
||||
elseif (distance > profile.fadeLevel) then
|
||||
local fade = 1 - (math.min(10, (distance - profile.fadeLevel)) * normalizedValue)
|
||||
self:SetFade(fade)
|
||||
@@ -815,7 +822,14 @@ function QuestieMap:DrawWorldIcon(data, areaID, x, y, showFlag)
|
||||
self:FakeHide()
|
||||
return
|
||||
elseif self.hidden then
|
||||
self:FakeShow()
|
||||
-- Only re-show icons that aren't filtered out (quest-type options
|
||||
-- like showDungeonQuests, enableMiniMapIcons, hideUntracked, etc.).
|
||||
-- Previously FadeLogic re-showed ANY FakeHidden minimap icon once in
|
||||
-- range, so the world-map quest-type filters never applied to the
|
||||
-- minimap. ShouldBeHidden mirrors the world-map draw-time check.
|
||||
if not self:ShouldBeHidden() then
|
||||
self:FakeShow()
|
||||
end
|
||||
elseif (distance > profile.fadeLevel) then
|
||||
local fade = 1 - (math.min(10, (distance - profile.fadeLevel)) * normalizedValue);
|
||||
self:SetFade(fade)
|
||||
|
||||
Reference in New Issue
Block a user