c33600a - Reorganise hook scripts to single function/file
[wowui.git] / RaidFrameColors.lua
1 -- TODO have colors in global addon object only in one place
2 local normalBarColor = CreateColor(0.3, 0.3, 0.3);
3 local dispelBarColor = CreateColor(1, 0.5, 0);
4 local normalBackColor = {0.7, 0.7, 0.7};
5 local dispelBackColor = {0.5, 0.2, 0};
6 local UnitDebuff = UnitDebuff;
7 local CompactUnitFrame_UpdateHealthColor = CompactUnitFrame_UpdateHealthColor;
8
9 hooksecurefunc("CompactUnitFrame_UpdateDispellableDebuffs", function(frame)
10     if frame and not frame:IsForbidden() and frame:GetName():match("^CompactRaidFrame%d") then
11         -- try to find dispellable debuff
12         if UnitDebuff(frame.displayedUnit, 1, "RAID") ~= nil then
13             frame.optionTable.healthBarColorOverride = dispelBarColor;
14             frame.background:SetColorTexture(unpack(dispelBackColor));
15         else
16             frame.optionTable.healthBarColorOverride = normalBarColor;
17             frame.background:SetColorTexture(unpack(normalBackColor));
18         end
19         -- update color
20         CompactUnitFrame_UpdateHealthColor(frame);
21     end
22 end);