absorb tracking

This commit is contained in:
andrew6180
2025-10-20 11:06:04 -07:00
parent 2afe270091
commit 7b731540c1
2 changed files with 66 additions and 0 deletions
+61
View File
@@ -2276,6 +2276,12 @@ Private.event_prototypes = {
if trigger.use_ignoreDead or trigger.use_ignoreDisconnected then if trigger.use_ignoreDead or trigger.use_ignoreDisconnected then
AddUnitEventForEvents(result, unit, "UNIT_FLAGS") AddUnitEventForEvents(result, unit, "UNIT_FLAGS")
end end
if trigger.use_showAbsorb then
AddUnitEventForEvents(result, unit, "UNIT_ABSORB_AMOUNT_CHANGED")
end
if trigger.use_showHealAbsorb then
AddUnitEventForEvents(result, unit, "UNIT_HEAL_ABSORB_AMOUNT_CHANGED")
end
if trigger.use_inRange then if trigger.use_inRange then
AddUnitEventForEvents(result, unit, "UNIT_IN_RANGE_UPDATE") AddUnitEventForEvents(result, unit, "UNIT_IN_RANGE_UPDATE")
end end
@@ -2398,6 +2404,31 @@ Private.event_prototypes = {
}, },
formatter = "BigNumber", formatter = "BigNumber",
}, },
{
name = "showAbsorb",
display = L["Show Absorb"],
type = "toggle",
test = "true",
reloadOptions = true
},
{
name = "absorbMode",
display = L["Absorb Display"],
type = "select",
test = "true",
values = "absorb_modes",
required = true,
enable = function(trigger) return trigger.use_showAbsorb end
},
{
name = "absorb",
type = "number",
display = L["Absorb"],
init = "UnitGetTotalAbsorbs(unit)",
store = true,
conditionType = "number",
enable = function(trigger) return trigger.use_showAbsorb end
},
{ {
type = "header", type = "header",
name = "unitCharacteristicsHeader", name = "unitCharacteristicsHeader",
@@ -2598,6 +2629,36 @@ Private.event_prototypes = {
test = "WeakAuras.UnitExistsFixed(unit, smart) and specificUnitCheck" test = "WeakAuras.UnitExistsFixed(unit, smart) and specificUnitCheck"
} }
}, },
overlayFuncs = {
{
name = L["Absorb"],
func = function(trigger, state)
local absorb = state.absorb
if (trigger.absorbMode == "OVERLAY_FROM_START") then
return 0, absorb;
else
return "forward", absorb;
end
end,
enable = function(trigger)
return trigger.use_showAbsorb;
end
},
{
name = L["Heal Absorb"],
func = function(trigger, state)
local healabsorb = state.healabsorb
if (trigger.absorbHealMode == "OVERLAY_FROM_START") then
return 0, healabsorb;
else
return "forward", healabsorb;
end
end,
enable = function(trigger)
return trigger.use_showHealAbsorb;
end
},
},
automaticrequired = true automaticrequired = true
}, },
["Power"] = { ["Power"] = {
+5
View File
@@ -3115,6 +3115,11 @@ Private.bool_types = {
[1] = L["True"] [1] = L["True"]
} }
Private.absorb_modes = {
OVERLAY_FROM_START = L["Attach to Start"],
OVERLAY_FROM_END = L["Attach to End"]
}
Private.update_categories = { Private.update_categories = {
{ {
name = "anchor", name = "anchor",