- elseif frame.overlay ~= nil then
- local _, _, _, _, _, _, _, _, _, spellid = UnitDebuff(unit, 1, "RAID");
- if UnitIsCharmed(unit) and frame.unit == frame.displayed then
- -- charmed
- if frame.overlay.color ~= charmcolor then
- frame.overlay:SetVertexColor(unpack(charmcolor));
- frame.overlay.color = charmcolor;
- if not frame.overlay:IsShown() then frame.overlay:Show() end
- end
- elseif spellid ~= nil and not ignoredAuras[spellid] then
- -- dispellable
- if frame.overlay.color ~= dispelcolor then
- frame.overlay:SetVertexColor(unpack(dispelcolor));
- frame.overlay.color = dispelcolor;
- if not frame.overlay:IsShown() then frame.overlay:Show() end
+ -- aura stacks
+ if next(frame.stacks) then
+ local _, amount = next(frame.stacks);
+ frame.stack:SetText(amount);
+ if not frame.stack:IsShown() then frame.stack:Show() end
+ elseif next(frame.hits) then
+ local _, amount = next(frame.hits);
+ frame.stack:SetText(amount);
+ if not frame.stack:IsShown() then frame.stack:Show() end
+ elseif frame.stack:IsShown() then
+ frame.stack:Hide();
+ end
+ -- custom buff indicator 1
+ if next(frame.buff1) then
+ if not frame.buffind1:IsShown() then frame.buffind1:Show() end
+ elseif frame.buffind1:IsShown() then
+ frame.buffind1:Hide();
+ end
+ -- custom buff indicator 2
+ if next(frame.buff2) then
+ if not frame.buffind2:IsShown() then frame.buffind2:Show() end
+ elseif frame.buffind2:IsShown() then
+ frame.buffind2:Hide();
+ end
+ -- incoming ability
+ if next(frame.incoming) then
+ if not frame.glow:IsShown() then frame.glow:Show() end
+ elseif frame.glow:IsShown() then
+ frame.glow:Hide();
+ end
+ -- DK Death Strike and Monk Stagger tracking
+ if frame.rolename == "TANK" then
+ if frame.classname == "DEATHKNIGHT" then
+ local power = UnitPower(unit);
+ if power < 45 then
+ if not frame.bottomwarn:IsShown() then frame.bottomwarn:Show() end
+ elseif frame.bottomwarn:IsShown() then
+ frame.bottomwarn:Hide();
+ end
+ elseif frame.classname == "MONK" then
+ if next(frame.stagger) then -- Heavy Stagger
+ if not frame.bottomwarn:IsShown() then frame.bottomwarn:Show() end
+ elseif frame.bottomwarn:IsShown() then
+ frame.bottomwarn:Hide();
+ end