-- UnitFrames.lua local _; local pairs = pairs; local UnitFrames = CreateFrame("Frame", "OmaUnitFrames"); local M = {}; OmaUnitFrames = M; local function initialize() local player = M.InitializePlayer(UIParent); --M.InitializePet(player); local target = M.InitializeTarget(UIParent); --M.InitializeToT(target); -- TODO boss frames, (arena frames) end local hidden = false; local function hideBlizzardFrames() if hidden then return end hidden = true; for _, frame in pairs({PlayerFrame, TargetFrame, TargetFrameToT, PetFrame}) do frame:UnregisterAllEvents(); frame.healthbar:UnregisterAllEvents(); frame.manabar:UnregisterAllEvents(); if frame.spellbar then frame.spellbar:UnregisterAllEvents() end if frame.powerBarAlt then frame.powerBarAlt:UnregisterAllEvents() end frame:Hide(); end -- TODO create frames for class powers, currently using Simple Holy Power for _, frame in pairs({PlayerFrameAlternateManaBar, ComboFrame, PriestBarFrame, RuneFrame, WarlockPowerFrame, MonkHarmonyBarFrame, PaladinPowerBarFrame, MageArcaneChargesFrame}) do frame:UnregisterAllEvents(); frame:Hide(); end -- from ShadowedUF, re-register vehicle events for default auras PlayerFrame:RegisterEvent("PLAYER_ENTERING_WORLD"); PlayerFrame:RegisterEvent("UNIT_ENTERING_VEHICLE"); PlayerFrame:RegisterEvent("UNIT_ENTERED_VEHICLE"); PlayerFrame:RegisterEvent("UNIT_EXITING_VEHICLE"); PlayerFrame:RegisterEvent("UNIT_EXITED_VEHICLE"); PlayerFrame:SetMovable(true); PlayerFrame:SetUserPlaced(true); PlayerFrame:SetDontSavePosition(true); end UnitFrames:RegisterEvent("PLAYER_LOGIN"); UnitFrames:SetScript("OnEvent", function(self, event) if event == "PLAYER_LOGIN" then OmaUFLoadChar(); hideBlizzardFrames(); initialize(); end end);