Skip to content

Commit

Permalink
Specify elements to be Alpha'd based on value == 0
Browse files Browse the repository at this point in the history
Perhaps this method is a bit more robust than previous to avoid assumptions that are not always true
  • Loading branch information
Zidras committed Dec 15, 2023
1 parent 3ccd4be commit bb51681
Showing 1 changed file with 10 additions and 23 deletions.
33 changes: 10 additions & 23 deletions ElvUI_ProjectZidras/Modules/UnitFrames/Elements/HealPrediction.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ local StatusBarPrototype = T.StatusBarPrototype

function ZUF.HealthClipFrame_HealComm(frame)
if frame.HealCommBar then
ZUF:SetAlpha_HealComm(frame.HealCommBar, 0) --xD changed from 1 to 0 to start it off hidden avoiding bug yet still have it there so it still positions properly
ZUF:SetAlpha_HealComm(frame.HealCommBar, 1)
end
end

Expand Down Expand Up @@ -272,12 +272,14 @@ function ZUF:Configure_HealComm(frame)
end
end

function ZUF:UpdateHealComm(_, myIncomingHeal, otherIncomingHeal, absorb, _, hasOverAbsorb, hasOverHealAbsorb, health, maxHealth)
function ZUF:UpdateHealComm(_, myIncomingHeal, otherIncomingHeal, absorb, healAbsorb, hasOverAbsorb, hasOverHealAbsorb, health, maxHealth)
local frame = self.frame
local db = frame and frame.db and frame.db.healPrediction
if not db or not db.absorbStyle or not health then return end

local pred = frame.HealCommBar
local myBar = pred.myBar
local otherBar = pred.otherBar
local healAbsorbBar = pred.healAbsorbBar
local absorbBar = pred.absorbBar
local overAbsorb = pred.overAbsorb
Expand All @@ -303,29 +305,14 @@ function ZUF:UpdateHealComm(_, myIncomingHeal, otherIncomingHeal, absorb, _, has
local missingHealth = maxHealth - health
local healthPostHeal = health + myIncomingHeal + otherIncomingHeal

-- xD shit code fix to visually hide heal and absorb bar if it is empty avoiding the 1 pixel line they each have by default in that state. Can prob be placed in a better position and fixed in a much better way.
-- This fix is insipred by EvlUI's default function "UpdateFillBar" in their HealComm.lua, they use "if amount == 0 then bar:Hide()" there to do the same thing, calling it on UpdateHealComm. The reason I used SetAlpha instead is
-- code fix by StefanOyx to visually hide heal and absorb bar if it is empty avoiding the 1 pixel line they each have by default in that state. Can prob be placed in a better position and fixed in a much better way.
-- This fix is inspired by ElvUI's default function "UpdateFillBar" in their HealComm.lua, they use "if amount == 0 then bar:Hide()" there to do the same thing, calling it on UpdateHealComm. The reason I used SetAlpha instead is
-- that for Zidras UpdateHealComm using :Hide() breaks bar positioning.

if healthPostHeal == health then
self.myBar:SetAlpha(0)
self.otherBar:SetAlpha(0)
else
self.myBar:SetAlpha(1)
self.otherBar:SetAlpha(1)
end

if absorb == 0 then
healAbsorbBar:SetAlpha(0)
absorbBar:SetAlpha(0)
overAbsorb:SetAlpha(0)
else
healAbsorbBar:SetAlpha(1)
absorbBar:SetAlpha(1)
overAbsorb:SetAlpha(1)
end

-- xD end of shit code
myBar:SetAlpha(myIncomingHeal == 0 and 0 or 1)
otherBar:SetAlpha(otherIncomingHeal == 0 and 0 or 1)
absorbBar:SetAlpha(absorb == 0 and 0 or 1)
healAbsorbBar:SetAlpha(healAbsorb == 0 and 0 or 1)

-- handle over heal absorbs
healAbsorbBar:ClearAllPoints()
Expand Down

0 comments on commit bb51681

Please sign in to comment.