local showInds, needUpdate = false, false;
local i = 1;
while true do
- _, _, icon, count, _, _, expires, _, _, _, id = UnitAura(unit, i, "PLAYER HELPFUL");
+ _, icon, count, _, _, expires, _, _, _, id = UnitAura(unit, i, "PLAYER HELPFUL");
if not id then break end
local pos = watchedAuras[id];
if pos then
for _, ind in pairs(frame.majors) do
hideInd(ind);
end
- local icon, count, expires, id;
+ if UnitIsDeadOrGhost(unit) then return end
+ local name, icon, count, expires, id;
local showMajors, needUpdate = false, false;
local majorPos = 1;
local alert = false; -- color the whole bar
local current = GetTime();
local i = 1;
while true do
- _, _, icon, count, _, _, expires, _, _, _, id = UnitAura(unit, i, "HARMFUL");
+ name, icon, count, _, _, expires, _, _, _, id = UnitAura(unit, i, "HARMFUL");
if not id or majorPos > 3 then break end
- local major = majorAuras[id];
+ local major = majorAuras[id] or majorAuras[name];
if major then
- needUpdate = showInd(frame.majors[majorPos], expires, current, count, icon) or needUpdate;
- if major.bar then alert = true end
+ if not major.noicon then
+ needUpdate = showInd(frame.majors[majorPos], expires, current, count, icon) or needUpdate;
+ end
+ if major.bar then alert = major.bar end
showMajors = true;
majorPos = majorPos + 1;
end