|
09-23-19, 04:37 AM | #1 |
TargetFrame Buffs/Debuffs
Hi,
I noticed that this piece of code does not work on enemy players... It works just fine on everything else... npcs, mobs, bosses etc... but on enemy players it does not. Any hint why? Code:
------------------------------------------- -- ADD BORDER TO BUFFS AND DEBUFFS ON TARGET FRAME ------------------------------------------- DebuffTypeColor = { }; DebuffTypeColor["none"] = { r = 0.80, g = 0, b = 0 }; DebuffTypeColor["Magic"] = { r = 0.20, g = 0.60, b = 1.00 }; DebuffTypeColor["Curse"] = { r = 0.60, g = 0.00, b = 1.00 }; DebuffTypeColor["Disease"] = { r = 0.60, g = 0.40, b = 0 }; DebuffTypeColor["Poison"] = { r = 0.00, g = 0.60, b = 0 }; DebuffTypeColor[""] = DebuffTypeColor["none"]; borderBuff = "Interface\\AddOns\\xVerminz\\media\\textureOverlay" borderDebuff = "Interface\\AddOns\\xVerminz\\media\\textureDebuff" font = "Interface\\AddOns\\xVerminz\\media\\fontAtari.ttf" local function SkinTarget() if TargetFrame:IsShown() then numBuffs = 0 for i=1, MAX_TARGET_BUFFS do if( select(3, UnitBuff("target", i)) ) then numBuffs = numBuffs + 1 end end numDebuffs = 0 for i=1, MAX_TARGET_DEBUFFS do if( select(3, UnitDebuff("target", i)) ) then numDebuffs = numDebuffs + 1 end end for i=1, numBuffs do local frame = _G["TargetFrameBuff"..i] local frameBorder = _G["TargetFrameBuff"..i.."Border"]; local frameCount = _G["TargetFrameBuff"..i.."Count"]; if (frameBorder~=nil) then frameBorder:Hide() end if (frameCount~=nil) then frameCount:SetFont(font, 10, 'THINOUTLINE') frameCount:SetPoint("BOTTOMRIGHT", frame, "BOTTOMRIGHT", 0, 2) end if (frame~=nil) then frame:CreateBeautyBorder(6) frame:SetBeautyBorderTexture(borderBuff) frame:SetScale(1.3); end end for i=1, numDebuffs do local frame = _G["TargetFrameDebuff"..i] local frameBorder = _G["TargetFrameDebuff"..i.."Border"]; local frameCount = _G["TargetFrameBuff"..i.."Count"]; if (frameBorder~=nil) then frameBorder:Hide() end if (frameCount~=nil) then frameCount:SetFont(font, 10, 'THINOUTLINE') frameCount:SetPoint("BOTTOMRIGHT", frame, "BOTTOMRIGHT", 0, 2) end if ( select(4, UnitDebuff("target", i)) ) then color = DebuffTypeColor[select(4, UnitDebuff("target", i))]; else color = DebuffTypeColor["none"]; end if (frame~=nil) then frame:CreateBeautyBorder(6) frame:SetBeautyBorderTexture(borderDebuff) frame:SetBeautyBorderColor(color.r, color.g, color.b) frame:SetScale(1.3); end end end end local function SkinPet() if PetFrame:IsShown() then numBuffs = 0 for i=1, MAX_TARGET_BUFFS do if( select(3, UnitBuff("pet", i)) ) then numBuffs = numBuffs + 1 end end numDebuffs = 0 for i=1, MAX_TARGET_BUFFS do if( select(3, UnitDebuff("pet", i)) ) then numDebuffs = numDebuffs + 1 end end for i=1, numBuffs do local frame = _G["PetFrameBuff"..i] local frameBorder = _G["PetFrameBuff"..i.."Border"]; local frameCount = _G["PetFrameBuff"..i.."Count"]; if (frameBorder~=nil) then frameBorder:Hide() end if (frameCount~=nil) then frameCount:SetFont(font, 10, 'THINOUTLINE') frameCount:SetPoint("BOTTOMRIGHT", frame, "BOTTOMRIGHT", 0, 2) end if (frame~=nil) then frame:CreateBeautyBorder(4) frame:SetBeautyBorderTexture(borderBuff) end end for i=1, numDebuffs do local frame = _G["PetFrameDebuff"..i] local frameBorder = _G["PetFrameDebuff"..i.."Border"]; local frameCount = _G["PetFrameBuff"..i.."Count"]; if (frameBorder~=nil) then frameBorder:Hide() end if (frameCount~=nil) then frameCount:SetFont(font, 10, 'THINOUTLINE') frameCount:SetPoint("BOTTOMRIGHT", frame, "BOTTOMRIGHT", 0, 2) end if ( select(4, UnitDebuff("pet", i)) ) then color = DebuffTypeColor[select(4, UnitDebuff("target", i))]; else color = DebuffTypeColor["none"]; end if (frame~=nil) then frame:CreateBeautyBorder(4) frame:SetBeautyBorderTexture(borderDebuff) frame:SetBeautyBorderColor(color.r, color.g, color.b) end end end end local function SkinFocus() -- if FocusFrame:IsShown() then -- numDebuffs = 0 -- for i=1, MAX_FOCUS_DEBUFFS do -- if( select(3, UnitDebuff("focus", i)) ) then -- numDebuffs = numDebuffs + 1 -- end -- end -- for i=1, numDebuffs do -- local frame = _G["FocusFrameDebuff"..i] -- -- frame:Hide() -- frame:SetScale(1.2); -- frame:CreateBeautyBorder(4) -- end -- end end TargetFrame:HookScript("OnUpdate", SkinTarget) PetFrame:HookScript("OnUpdate", SkinPet) |
|
WoWInterface » Developer Discussions » Lua/XML Help » TargetFrame Buffs/Debuffs |
«
Previous Thread
|
Next Thread
»
|
Display Modes |
Switch to Linear Mode |
Hybrid Mode |
Switch to Threaded Mode |
|
|