Hi everyone,
I'm currently working on an addon that tracks status effects on the target in real-time to accurately calculate the penetration provided by the champion point Force of Nature. However, I'm running into an issue: out of the 8 possible status effects, only 3 are being tracked correctly (Burning, Poisoned, and Hemorrhaging). The following status effects are not being tracked:
Overcharged
Chill
Concussion
Sundered
Diseased
I've verified that the methods I'm using work fine for the other 3 status effects, so I'm wondering if there is a different approach or any tips for tracking these remaining 5 status effects.
Has anyone else encountered this issue or can suggest the correct method to ensure all 8 status effects are tracked accurately? Any help or advice would be greatly appreciated!
This is a part of the code I'm using
Code:
local targetDebuffsFoN = {
[178118] = 660, -- Magic (Overcharged) not working
[18084] = 660, -- Fire (Burning)
[95136] = 660, -- Frost (Chill) not working
[95134] = 660, -- Lightning (Concussion) not working
[178123] = 660, -- Physical (Sundered) not working
[21929] = 660, -- Poison (Poisoned)
[178127] = 660, -- Foulness (Diseased) not working
[148801] = 660, -- Bleeding (Hemorrhaging)
}
-- Function to get additional penetration from status effects
local function GetAdditionalPenetrationFromStatusEffects()
local additionalPenetration = 0
if DoesUnitExist('reticleover') and not IsUnitPlayer('reticleover') then
for i = 1, GetNumBuffs('reticleover') do
local _, _, _, _, _, _, _, _, _, _, abilityId = GetUnitBuffInfo('reticleover', i)
if targetDebuffsFoN[abilityId] and forceOfNature then
additionalPenetration = additionalPenetration + targetDebuffsFoN[abilityId]
Log("Status effect detected: " .. abilityId .. " - Additional penetration: " .. targetDebuffsFoN[abilityId])
elseif targetDebuffsFoN[abilityId] then
Log("Status effect detected but Force of Nature not equipped: " .. abilityId)
end
end
end
return additionalPenetration
end
Thanks in advance.