diff Main.lua @ 488:95e0a5b04d52 7.0.3-4

Added a workaround for WoWDB not supporting micro-dungeons - micro-dungeon coordinates are now translated on to the base floor for the world map if possible.
author MMOSimca <mmosimca@gmail.com>
date Wed, 14 Sep 2016 08:21:01 -0400
parents b661f10e04d9
children 83fcf3250d35
line wrap: on
line diff
--- a/Main.lua	Wed Sep 14 05:49:50 2016 -0400
+++ b/Main.lua	Wed Sep 14 08:21:01 2016 -0400
@@ -331,9 +331,15 @@
 
 
 local function CurrentLocationData()
-    local x, y, current_area_id, map_level = HereBeDragons:GetPlayerZonePosition(true)
+    local x, y, current_area_id, map_level, map_file, is_micro_dungeon = HereBeDragons:GetPlayerZonePosition(false)
     local zone_name = _G.GetRealZoneText()
 
+    -- Remove micro-dungeon-ness by translating back to the parent world map (at floor 0) if possible
+    if (is_micro_dungeon and x and y and current_area_id and map_level and map_level > 0) then
+        x, y = HereBeDragons:TranslateZoneCoordinates(x, y, current_area_id, map_level, current_area_id, 0, false)
+        map_level = 0
+    end
+
     -- Put coordinates into expected format (as integers, they don't get a billion decimals output in the SavedVariables)
     local x_int = nil
     if (x and type(x) == "number") then