6e06bfb - Fix character settings loading
authorAleksi Blinnikka <aleksi.blinnikka@gmail.com>
Sun, 28 Jan 2018 10:28:04 +0000
committerAleksi Blinnikka <aleksi.blinnikka@gmail.com>
Sun, 28 Jan 2018 10:28:04 +0000
ADDON_LOADED was not actually late enough to have UnitFullName
available, it just fired multiple times so some later addon loading had
it already.

OmaRF/RaidFrame.lua
OmaUF/Auras.lua
OmaUF/Events.lua
OmaUF/UnitFrames.lua

index 015ce88..4259c67 100644 (file)
@@ -322,7 +322,15 @@ local function initializeFocus(parent)
     secure:SetAttribute("_onstate-vehicleui", vehicletoggle);
 end
 
+local function loadCharSettings()
+    width, height = Settings.Character.Width, Settings.Character.Height;
+    anchorX, anchorY = Settings.Character.AnchorX, Settings.Character.AnchorY;
+    attributes = Settings.Character.Clickheal;
+    positions = Settings.Character.Positions;
+end
+
 local function initialize()
+    loadCharSettings();
     CFrame:SetPoint("CENTER", nil, "CENTER", anchorX, anchorY);
     CFrame:SetHeight((height+2)*8);
     CFrame:SetWidth((width+2)*5+1);
@@ -331,13 +339,6 @@ local function initialize()
     initializeFocus(CFrame);
 end
 
-local function loadCharSettings()
-    width, height = Settings.Character.Width, Settings.Character.Height;
-    anchorX, anchorY = Settings.Character.AnchorX, Settings.Character.AnchorY;
-    attributes = Settings.Character.Clickheal;
-    positions = Settings.Character.Positions;
-end
-
 -- hiding Blizzard frames somewhat based on ShadowedUF
 local function hideBlizzardRaidButton()
     if InCombatLockdown() then return end
@@ -384,24 +385,18 @@ local function hideBlizzardRaid()
     end
 end
 
-CFrame:RegisterEvent("ADDON_LOADED");
 CFrame:RegisterEvent("PLAYER_LOGIN");
 CFrame:RegisterEvent("PLAYER_REGEN_ENABLED");
 CFrame:SetScript("OnEvent", function(self, event, addon)
     if event == "PLAYER_LOGIN" then
+        OmaRFLoadChar();
+        OmaRFEvents.LoadChar();
+        OmaRFIndicators.LoadChar();
         hideBlizzardRaid();
         initialize();
-    elseif event == "ADDON_LOADED" and addon == "Blizzard_CompactRaidFrames" then
-        -- never really happening unless load order changes
-        hideBlizzardRaid();
     elseif event == "PLAYER_REGEN_ENABLED" then
         -- if CompactRaidFrameManager_UpdateOptionsFlowContainer was called in combat
         -- couldn't hide the button
         hideBlizzardRaidButton();
-    elseif event == "ADDON_LOADED" and addon == "OmaRF" then
-        OmaRFLoadChar();
-        loadCharSettings();
-        OmaRFEvents.LoadChar();
-        OmaRFIndicators.LoadChar();
     end
 end);
index 95ef2c6..3af6ac5 100644 (file)
@@ -89,6 +89,7 @@ function M.UpdateAuras(frame, unit)
         while true do
             _, _, icon, count, _, duration, expires, caster, _, _, id = UnitAura(unit, i, filter);
             if not id or not auras[pos] then break end
+            -- aura filter self-applied, player-applied, list of important auras TODO
             local aura = auras[pos];
             aura.icon:SetTexture(icon);
             aura.index = i;
index 1d3644d..0e63e9c 100644 (file)
@@ -212,7 +212,7 @@ local function updateAuras(frame, unit)
             frame.overlay.color = overlayColorDispel;
         end
     -- don't overlay charmed when in vehicle
-    elseif UnitIsCharmed(unit) and unit == frame.unit then
+    elseif UnitIsCharmed(unit) and not frame.inVehicle then
         if frame.overlay.color ~= overlayColorCharm then
             frame.overlay:SetVertexColor(unpack(overlayColorCharm));
             frame.overlay:Show();
index 76c2c7e..d2e5fcc 100644 (file)
@@ -236,18 +236,19 @@ local function initializeTarget(parent)
     secure:SetAttribute("_onstate-vehicleui", vehicletoggle);
 end
 
-local function initialize()
-    initializePlayer(UIParent);
-    initializeTarget(UIParent);
-    -- TODO boss frames, pet frame, (arena frames)
-end
-
 local function loadCharSettings()
     width, height = Settings.Character.Width, Settings.Character.Height;
     anchorX, anchorY = Settings.Character.AnchorX, Settings.Character.AnchorY;
     attributes = Settings.Character.Clickheal;
 end
 
+local function initialize()
+    loadCharSettings();
+    initializePlayer(UIParent);
+    initializeTarget(UIParent);
+    -- TODO boss frames, pet frame, (arena frames)
+end
+
 local hidden = false;
 local function hideBlizzardFrames()
     if hidden then return end
@@ -281,15 +282,12 @@ local function hideBlizzardFrames()
     PlayerFrame:SetDontSavePosition(true);
 end
 
-UnitFrames:RegisterEvent("ADDON_LOADED");
 UnitFrames:RegisterEvent("PLAYER_LOGIN");
 UnitFrames:SetScript("OnEvent", function(self, event)
     if event == "PLAYER_LOGIN" then
-        hideBlizzardFrames();
-        initialize();
-    elseif event == "ADDON_LOADED" then
         OmaUFLoadChar();
-        loadCharSettings();
         OmaUFEvents.LoadChar();
+        hideBlizzardFrames();
+        initialize();
     end
 end);