X-Git-Url: https://www.aleksib.fi/git/wowui.git/blobdiff_plain/1e0cd8d9b816fdf44ebc2e1a8831cd456114f2e6..4fb357642ebf6b8b7f103bf86e67a44de1dd00a7:/kehys/updater.lua diff --git a/kehys/updater.lua b/kehys/updater.lua index 96e9f49..9a673ae 100644 --- a/kehys/updater.lua +++ b/kehys/updater.lua @@ -69,13 +69,18 @@ function addon.FrameUpdate(frame) frame.prev.hmax = nil; else if UnitIsAFK(unit) then + frame.text.status = true; frame.text:SetText("afk"); if not frame.text:IsShown() then frame.text:Show() end elseif UnitIsDND(unit) then + frame.text.status = true; frame.text:SetText("dnd"); if not frame.text:IsShown() then frame.text:Show() end else - if frame.text:IsShown() then frame.text:Hide() end + frame.text.status = false; + if not (frame.nonraid and frame.unit == "target") and frame.text:IsShown() then + frame.text:Hide(); + end end if frame.nonraid and frame.unit == "player" then if InCombatLockdown() then @@ -92,6 +97,17 @@ function addon.FrameUpdate(frame) -- health local current, hmax = UnitHealth(unit), UnitHealthMax(unit); if frame.prev.health ~= current or frame.prev.hmax ~= hmax then + if frame.nonraid and frame.unit == "target" and frame.prev.htext ~= current then + frame.prev.htext = current; + if current > 1000000000 then -- 1.0B + frame.text:SetFormattedText("%.2fB", current / 1000000000); + elseif current > 1000000 then -- 1.0M + frame.text:SetFormattedText("%.2fM", current / 1000000); + elseif current > 1000 then -- 1.0K + frame.text:SetFormattedText("%.1fK", current / 1000); + end + if not frame.text:IsShown() then frame.text:Show() end + end frame.prev.health = current; frame.prev.hmax = hmax; if hmax < current or hmax <= 1 then @@ -161,7 +177,7 @@ function addon.FrameUpdate(frame) frame.prev.mmax = max; if max < current or max <= 1 then frame.mana:SetWidth(width); - frame.mana:SetText("100"); + frame.manatext:SetText("100"); if not frame.mana:IsShown() then frame.mana:Show() end if not frame.manatext:IsShown() then frame.manatext:Show() end elseif current <= 0 then