-- Logging.lua local _; local print = print; local LoggingCombat = LoggingCombat; local GetInstanceInfo = GetInstanceInfo; local CTimerAfter = C_Timer.After; local frame = CreateFrame("Frame", "OmaLogger"); frame:Hide(); local raidIDs = { [2164] = "The Eternal Palace", [2217] = "Ny'alotha", [2296] = "Castle Nathria", [2450] = "Sanctum of Domination", }; local dungeonIDs = { [1594] = "The Undermine", [1754] = "Freehold", [1762] = "King's Rest", [1763] = "Atal'Dazar", [1771] = "Tol Dagor", [1822] = "Siege of Boralus", [1841] = "Underrot", [1862] = "Waycrest Manor", [1864] = "Shrine of the Storm", [1877] = "Temple of Sethraliss", }; local function shouldLog() local _, zoneType, difficulty, _, _, _, _, mapID = GetInstanceInfo(); if zoneType == "raid" then print(mapID) end if zoneType == "raid" and raidIDs[mapID] then if difficulty == 17 then -- LFR return false; elseif difficulty == 16 then -- Mythic return true; elseif difficulty == 15 then -- Heroic return true; elseif difficulty == 14 then -- Normal return true; end elseif zoneType == "party" and dungeonIDs[mapID] then if difficulty == 8 or difficulty == 23 then return true; end end return false; end local prevLogging = nil; local function updateZone() local log = shouldLog(); if log then LoggingCombat(true); print("<><><><><><><><><><><>"); print("Started Combat Log"); print("<><><><><><><><><><><>"); elseif prevLogging and LoggingCombat() then print("<><><><><><><><><><><>"); print("Ended Combat Log"); print("<><><><><><><><><><><>"); end prevLogging = log; end frame:SetScript("OnEvent", function(self, event) if event == "ZONE_CHANGED_NEW_AREA" or event == "PLAYER_LOGIN" then CTimerAfter(3, updateZone); elseif event == "CHALLENGE_MODE_START" then CTimerAfter(1, updateZone); end end); frame:RegisterEvent("ZONE_CHANGED_NEW_AREA"); frame:RegisterEvent("PLAYER_LOGIN"); --frame:RegisterEvent("CHALLENGE_MODE_START"); -- for logging M+