115 lines
3.7 KiB
Lua
115 lines
3.7 KiB
Lua
local E, L, V, P, G = unpack(select(2, ...)) --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
|
local S = E:GetModule("Skins")
|
|
|
|
--Lua functions
|
|
local _G = _G
|
|
local unpack = unpack
|
|
--WoW API / Variables
|
|
|
|
S:AddCallbackForAddon("Blizzard_TalentUI", "Skin_Blizzard_TalentUI", function()
|
|
if not E.private.skins.blizzard.enable or not E.private.skins.blizzard.talent then return end
|
|
|
|
PlayerTalentFrame:StripTextures(true)
|
|
PlayerTalentFrame:CreateBackdrop("Transparent")
|
|
PlayerTalentFrame.backdrop:Point("TOPLEFT", 11, -12)
|
|
PlayerTalentFrame.backdrop:Point("BOTTOMRIGHT", -32, 76)
|
|
|
|
S:SetBackdropHitRect(PlayerTalentFrame)
|
|
|
|
do
|
|
local offset
|
|
|
|
local talentGroups = GetNumTalentGroups(false, false)
|
|
local petTalentGroups = GetNumTalentGroups(false, true)
|
|
|
|
if talentGroups + petTalentGroups > 1 then
|
|
S:SetUIPanelWindowInfo(PlayerTalentFrame, "width", nil, 32)
|
|
offset = true
|
|
else
|
|
S:SetUIPanelWindowInfo(PlayerTalentFrame, "width")
|
|
end
|
|
|
|
hooksecurefunc("PlayerTalentFrame_UpdateSpecs", function(_, numTalentGroups, _, numPetTalentGroups)
|
|
if offset and numTalentGroups + numPetTalentGroups <= 1 then
|
|
S:SetUIPanelWindowInfo(PlayerTalentFrame, "width")
|
|
offset = nil
|
|
elseif not offset and numTalentGroups + numPetTalentGroups > 1 then
|
|
S:SetUIPanelWindowInfo(PlayerTalentFrame, "width", nil, 32)
|
|
offset = true
|
|
end
|
|
end)
|
|
end
|
|
|
|
S:HandleCloseButton(PlayerTalentFrameCloseButton, PlayerTalentFrame.backdrop)
|
|
|
|
local function glyphFrameOnShow(self)
|
|
if GlyphFrame and GlyphFrame:IsShown() then
|
|
self:Hide()
|
|
end
|
|
end
|
|
|
|
PlayerTalentFrameStatusFrame:HookScript("OnShow", glyphFrameOnShow)
|
|
PlayerTalentFrameActivateButton:HookScript("OnShow", glyphFrameOnShow)
|
|
|
|
PlayerTalentFrameStatusFrame:StripTextures()
|
|
PlayerTalentFramePointsBar:StripTextures()
|
|
PlayerTalentFramePreviewBar:StripTextures()
|
|
|
|
S:HandleButton(PlayerTalentFrameActivateButton)
|
|
S:HandleButton(PlayerTalentFrameResetButton)
|
|
S:HandleButton(PlayerTalentFrameLearnButton)
|
|
|
|
PlayerTalentFramePreviewBarFiller:StripTextures()
|
|
|
|
PlayerTalentFrameScrollFrame:StripTextures()
|
|
PlayerTalentFrameScrollFrame:CreateBackdrop("Default")
|
|
S:HandleScrollBar(PlayerTalentFrameScrollFrameScrollBar)
|
|
|
|
for i = 1, MAX_NUM_TALENTS do
|
|
local talent = _G["PlayerTalentFrameTalent"..i]
|
|
local icon = _G["PlayerTalentFrameTalent"..i.."IconTexture"]
|
|
local rank = _G["PlayerTalentFrameTalent"..i.."Rank"]
|
|
|
|
if talent then
|
|
talent:StripTextures()
|
|
talent:SetTemplate("Default")
|
|
talent:StyleButton()
|
|
|
|
icon:SetInside()
|
|
icon:SetTexCoord(unpack(E.TexCoords))
|
|
icon:SetDrawLayer("ARTWORK")
|
|
|
|
rank:SetFont(E.LSM:Fetch("font", E.db.general.font), 12, "OUTLINE")
|
|
end
|
|
end
|
|
|
|
for i = 1, 4 do
|
|
S:HandleTab(_G["PlayerTalentFrameTab"..i])
|
|
end
|
|
|
|
for i = 1, MAX_TALENT_TABS do
|
|
local tab = _G["PlayerSpecTab"..i]
|
|
tab:GetRegions():Hide()
|
|
|
|
tab:SetTemplate("Default")
|
|
tab:StyleButton(nil, true)
|
|
|
|
tab:GetNormalTexture():SetInside()
|
|
tab:GetNormalTexture():SetTexCoord(unpack(E.TexCoords))
|
|
end
|
|
|
|
PlayerTalentFrameStatusFrame:Point("TOPLEFT", 57, -40)
|
|
PlayerTalentFrameActivateButton:Point("TOP", 0, -40)
|
|
|
|
PlayerTalentFrameScrollFrame:Width(302)
|
|
PlayerTalentFrameScrollFrame:Point("TOPRIGHT", PlayerTalentFrame, "TOPRIGHT", -62, -77)
|
|
PlayerTalentFrameScrollFrame:Point("BOTTOM", PlayerTalentFramePointsBar, "TOP", 0, 0)
|
|
|
|
PlayerTalentFrameScrollFrameScrollBar:Point("TOPLEFT", PlayerTalentFrameScrollFrame, "TOPRIGHT", 4, -18)
|
|
PlayerTalentFrameScrollFrameScrollBar:Point("BOTTOMLEFT", PlayerTalentFrameScrollFrame, "BOTTOMRIGHT", 4, 18)
|
|
|
|
PlayerTalentFrameResetButton:Point("RIGHT", -4, 1)
|
|
PlayerTalentFrameLearnButton:Point("RIGHT", PlayerTalentFrameResetButton, "LEFT", -3, 0)
|
|
|
|
PlayerTalentFrameTab1:Point("BOTTOMLEFT", 11, 46)
|
|
end) |