Add files via upload
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
BNP = BNP or {}
|
||||
|
||||
-- Safe one-shot native visual repair ---------------------------------------
|
||||
-- Some UI/skin addons can alter the native Blizzard nameplate border or
|
||||
-- border before BNP discovers the plate. Repair the native border only
|
||||
-- when a plate is initialized/shown. There is intentionally NO heartbeat and
|
||||
-- no layout/parent/anchor enforcement here, so BNP never fights WorldFrame
|
||||
-- movement while the player/camera is moving.
|
||||
|
||||
local BORDER_TEXTURE = "Interface\\Tooltips\\Nameplate-Border"
|
||||
local HEALTH_TEXTURE = "Interface\\TargetingFrame\\UI-StatusBar"
|
||||
|
||||
local function IsTotemIconOnly(plate)
|
||||
return plate and plate.BNPTotemLastKey and
|
||||
BNP.AreTotemIndicatorsEnabled and BNP:AreTotemIndicatorsEnabled()
|
||||
end
|
||||
|
||||
local function RestoreBorder(plate)
|
||||
local border = plate and plate.border
|
||||
if not border then return end
|
||||
|
||||
if border.GetTexture and border.SetTexture and border:GetTexture() ~= BORDER_TEXTURE then
|
||||
border:SetTexture(BORDER_TEXTURE)
|
||||
end
|
||||
|
||||
if border.IsShown and border.Show and not border:IsShown() then
|
||||
border:Show()
|
||||
end
|
||||
end
|
||||
|
||||
function BNP:RepairNativeNameplateVisuals(plate)
|
||||
if not plate then return end
|
||||
if IsTotemIconOnly(plate) then return end
|
||||
|
||||
RestoreBorder(plate)
|
||||
end
|
||||
|
||||
if BNP.libnameplate then
|
||||
table.insert(BNP.libnameplate.OnInit, function(plate)
|
||||
BNP:RepairNativeNameplateVisuals(plate or this)
|
||||
end)
|
||||
|
||||
table.insert(BNP.libnameplate.OnShow, function(plate)
|
||||
BNP:RepairNativeNameplateVisuals(plate or this)
|
||||
end)
|
||||
end
|
||||
Reference in New Issue
Block a user