You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

410 lines
14 KiB

local AS = unpack(AddOnSkins)
function AS:Blizzard_CraftUI(event, addon)
if addon ~= 'Blizzard_CraftUI' then return end
AS:SkinBackdropFrame(CraftFrame, nil, nil, true)
CraftFrame.Backdrop:SetPoint('TOPLEFT', 10, -12)
CraftFrame.Backdrop:SetPoint('BOTTOMRIGHT', -34, 70)
AS:SkinStatusBar(CraftRankFrame)
AS:StripTextures(CraftListScrollFrame)
AS:StripTextures(CraftDetailScrollFrame)
AS:StripTextures(CraftDetailScrollChildFrame)
AS:SkinScrollBar(CraftListScrollFrameScrollBar)
AS:SkinScrollBar(CraftDetailScrollFrameScrollBar)
AS:SkinButton(CraftCancelButton)
AS:SkinButton(CraftCreateButton)
AS:SkinFrame(CraftIcon)
AS:StyleButton(CraftIcon)
CraftRequirements:SetTextColor(1, 0.80, 0.10)
AS:SkinCloseButton(CraftFrameCloseButton, CraftFrame.backdrop)
AS:StripTextures(CraftExpandButtonFrame)
CraftCollapseAllButton:SetPoint('LEFT', CraftExpandTabLeft, 'RIGHT', -8, 5)
CraftCollapseAllButton:GetNormalTexture():SetPoint('LEFT', 3, 2)
CraftCollapseAllButton:GetNormalTexture():SetSize(15, 15)
CraftCollapseAllButton:SetHighlightTexture('')
CraftCollapseAllButton.SetHighlightTexture = AS.Noop
CraftCollapseAllButton:SetDisabledTexture(AS.Media.Textures.Minus)
CraftCollapseAllButton.SetDisabledTexture = AS.Noop
CraftCollapseAllButton:GetDisabledTexture():SetPoint('LEFT', 3, 2)
CraftCollapseAllButton:GetDisabledTexture():SetSize(15, 15)
CraftCollapseAllButton:GetDisabledTexture():SetDesaturated(true)
for i = 1, CRAFTS_DISPLAYED do
local button = _G['Craft'..i]
local highlight = _G['Craft'..i..'Highlight']
button:GetNormalTexture():SetSize(14, 14)
button:GetNormalTexture():SetPoint('LEFT', 4, 1)
highlight:SetTexture('')
highlight.SetTexture = AS.Noop
end
for i = 1, MAX_CRAFT_REAGENTS do
local reagent = _G['CraftReagent'..i]
local icon = _G['CraftReagent'..i..'IconTexture']
local name = _G['CraftReagent'..i..'Name']
local nameFrame = _G['CraftReagent'..i..'NameFrame']
AS:SetTemplate(reagent)
AS:StyleButton(reagent)
reagent:SetSize(143, 40)
AS:SkinTexture(icon, true)
name:SetPoint('LEFT', nameFrame, 'LEFT', 20, 0)
AS:Kill(nameFrame)
end
CraftReagent1:SetPoint('TOPLEFT', CraftReagentLabel, 'BOTTOMLEFT', -3, -3)
CraftReagent2:SetPoint('LEFT', CraftReagent1, 'RIGHT', 3, 0)
CraftReagent4:SetPoint('LEFT', CraftReagent3, 'RIGHT', 3, 0)
CraftReagent6:SetPoint('LEFT', CraftReagent5, 'RIGHT', 3, 0)
CraftReagent8:SetPoint('LEFT', CraftReagent7, 'RIGHT', 3, 0)
hooksecurefunc('CraftFrame_Update', function()
CraftRankFrame:SetStatusBarColor(0.13, 0.28, 0.85)
for i = 1, CRAFTS_DISPLAYED do
local button = _G['Craft'..i]
local texture = button:GetNormalTexture():GetTexture()
if texture then
if strfind(texture, 'MinusButton') then
button:SetNormalTexture(AS.Media.Textures.Minus)
elseif strfind(texture, 'PlusButton') then
button:SetNormalTexture(AS.Media.Textures.Plus)
end
end
end
if CraftCollapseAllButton.collapsed then
CraftCollapseAllButton:SetNormalTexture(AS.Media.Textures.Plus)
else
CraftCollapseAllButton:SetNormalTexture(AS.Media.Textures.Minus)
end
end)
hooksecurefunc('CraftFrame_SetSelection', function(id)
if ( not id ) then
return;
end
CraftReagentLabel:SetPoint('TOPLEFT', CraftDescription, 'BOTTOMLEFT', 0, -10)
if CraftIcon:GetNormalTexture() then
CraftReagentLabel:SetAlpha(1)
CraftIcon:SetAlpha(1)
AS:SkinTexture(CraftIcon:GetNormalTexture())
AS:SetInside(CraftIcon:GetNormalTexture())
else
CraftReagentLabel:SetAlpha(0)
CraftIcon:SetAlpha(0)
end
local skillLink = GetCraftItemLink(id)
if skillLink then
local quality = select(3, GetItemInfo(skillLink))
if quality and quality > 1 then
CraftIcon:SetBackdropBorderColor(GetItemQualityColor(quality))
CraftName:SetTextColor(GetItemQualityColor(quality))
else
CraftIcon:SetBackdropBorderColor(unpack(AS.BorderColor))
CraftName:SetTextColor(1, 1, 1)
end
end
local numReagents = GetCraftNumReagents(id)
for i = 1, numReagents, 1 do
local _, _, reagentCount, playerReagentCount = GetCraftReagentInfo(id, i)
local reagentLink = GetCraftReagentItemLink(id, i)
local reagent = _G['CraftReagent'..i]
local icon = _G['CraftReagent'..i..'IconTexture']
local name = _G['CraftReagent'..i..'Name']
if reagentLink then
local quality = select(3, GetItemInfo(reagentLink))
if quality and quality > 1 then
icon.Backdrop:SetBackdropBorderColor(GetItemQualityColor(quality))
reagent:SetBackdropBorderColor(GetItemQualityColor(quality))
if playerReagentCount < reagentCount then
name:SetTextColor(0.5, 0.5, 0.5)
else
name:SetTextColor(GetItemQualityColor(quality))
end
else
reagent:SetBackdropBorderColor(unpack(AS.BorderColor))
icon.Backdrop:SetBackdropBorderColor(unpack(AS.BorderColor))
end
end
end
if (numReagents < 4) then
CraftDetailScrollFrameScrollBar:Hide();
CraftDetailScrollFrameTop:Hide();
CraftDetailScrollFrameBottom:Hide();
else
CraftDetailScrollFrameScrollBar:Show();
CraftDetailScrollFrameTop:Show();
CraftDetailScrollFrameBottom:Show();
end
end)
end
function AS:Blizzard_TradeSkill(event, addon)
if addon ~= 'Blizzard_TradeSkillUI' then return end
AS:SkinBackdropFrame(_G.TradeSkillFrame, nil, nil, true)
_G.TradeSkillFramePortrait:SetAlpha(0)
_G.TradeSkillFrame.Backdrop:SetPoint('TOPLEFT', 11, -12)
_G.TradeSkillFrame.Backdrop:SetPoint('BOTTOMRIGHT', -32, 76)
AS:CreateShadow(_G.TradeSkillFrame)
_G.TradeSkillFrame.Shadow:SetPoint('TOPLEFT', 8, -9)
_G.TradeSkillFrame.Shadow:SetPoint('BOTTOMRIGHT', -29, 73)
AS:StripTextures(_G.TradeSkillRankFrame)
AS:CreateBackdrop(_G.TradeSkillRankFrame, "Transparent")
_G.TradeSkillRankFrame:Size(322, 16)
_G.TradeSkillRankFrame:ClearAllPoints()
_G.TradeSkillRankFrame:Point('TOP', -10, -45)
_G.TradeSkillRankFrame:SetStatusBarTexture(AS.NormTex)
AS:SkinCloseButton(_G.TradeSkillFrameCloseButton)
AS:StripTextures(_G.TradeSkillExpandButtonFrame)
local TradeSkillCollapseAllButton = _G.TradeSkillCollapseAllButton
TradeSkillCollapseAllButton:GetNormalTexture():SetPoint('LEFT', 3, 2)
TradeSkillCollapseAllButton:GetNormalTexture():SetSize(15, 15)
TradeSkillCollapseAllButton:SetHighlightTexture('')
TradeSkillCollapseAllButton.SetHighlightTexture = AS.Noop
TradeSkillCollapseAllButton:SetDisabledTexture(AS.Media.Textures.Minus)
TradeSkillCollapseAllButton.SetDisabledTexture = AS.Noop
TradeSkillCollapseAllButton:GetDisabledTexture():SetPoint('LEFT', 3, 2)
TradeSkillCollapseAllButton:GetDisabledTexture():SetSize(15, 15)
TradeSkillCollapseAllButton:GetDisabledTexture():SetDesaturated(true)
AS:SkinDropDownBox(_G.TradeSkillInvSlotDropDown)
_G.TradeSkillInvSlotDropDown:ClearAllPoints()
_G.TradeSkillInvSlotDropDown:SetPoint('TOPRIGHT', TradeSkillFrame, 'TOPRIGHT', -32, -64)
AS:SkinDropDownBox(_G.TradeSkillSubClassDropDown)
_G.TradeSkillSubClassDropDown:ClearAllPoints()
_G.TradeSkillSubClassDropDown:SetPoint('RIGHT', _G.TradeSkillInvSlotDropDown, 'RIGHT', -130, 0)
_G.TradeSkillFrameTitleText:ClearAllPoints()
_G.TradeSkillFrameTitleText:SetPoint('TOP', _G.TradeSkillFrame, 'TOP', 0, -18)
for i = 1, _G.TRADE_SKILLS_DISPLAYED do
local button = _G['TradeSkillSkill'..i]
local highlight = _G['TradeSkillSkill'..i..'Highlight']
button:GetNormalTexture():SetSize(14, 14)
button:GetNormalTexture():SetPoint('LEFT', 2, 1)
highlight:SetTexture('')
highlight.SetTexture = AS.Noop
end
hooksecurefunc('TradeSkillFrame_Update', function()
for i = 1, _G.TRADE_SKILLS_DISPLAYED do
local button = _G['TradeSkillSkill'..i]
local texture = button:GetNormalTexture():GetTexture()
if texture then
if strfind(texture, 'MinusButton') then
button:SetNormalTexture(AS.Media.Textures.Minus)
elseif strfind(texture, 'PlusButton') then
button:SetNormalTexture(AS.Media.Textures.Plus)
end
end
end
if TradeSkillCollapseAllButton.collapsed then
TradeSkillCollapseAllButton:SetNormalTexture(AS.Media.Textures.Plus)
else
TradeSkillCollapseAllButton:SetNormalTexture(AS.Media.Textures.Minus)
end
end)
AS:StripTextures(_G.TradeSkillDetailScrollFrame)
AS:StripTextures(_G.TradeSkillListScrollFrame)
AS:StripTextures(_G.TradeSkillDetailScrollChildFrame)
AS:SkinScrollBar(_G.TradeSkillListScrollFrameScrollBar)
AS:SkinScrollBar(_G.TradeSkillDetailScrollFrameScrollBar)
AS:StyleButton(_G.TradeSkillSkillIcon, nil, true)
for i = 1, _G.MAX_TRADE_SKILL_REAGENTS do
local icon = _G['TradeSkillReagent'..i..'IconTexture']
local nameFrame = _G['TradeSkillReagent'..i..'NameFrame']
AS:SkinTexture(icon, true)
AS:Kill(nameFrame)
end
AS:SkinButton(_G.TradeSkillCancelButton)
AS:SkinButton(_G.TradeSkillCreateButton)
AS:SkinButton(_G.TradeSkillCreateAllButton)
AS:SkinArrowButton(_G.TradeSkillDecrementButton)
_G.TradeSkillInputBox:SetHeight(16)
AS:SkinEditBox(_G.TradeSkillInputBox)
AS:SkinArrowButton(_G.TradeSkillIncrementButton)
hooksecurefunc('TradeSkillFrame_SetSelection', function(id)
local skillName, skillType, numAvailable, isExpanded = GetTradeSkillInfo(id)
if skillType == "header" then
return
end
if _G.TradeSkillSkillIcon:GetNormalTexture() then
_G.TradeSkillSkillIcon:SetAlpha(1)
AS:SkinTexture(_G.TradeSkillSkillIcon:GetNormalTexture(), true)
_G.TradeSkillSkillIcon:GetNormalTexture():SetInside()
else
_G.TradeSkillSkillIcon:SetAlpha(0)
end
_G.TradeSkillSkillIcon:SetSize(40, 40)
_G.TradeSkillSkillIcon:SetPoint('TOPLEFT', 2, -3)
local skillLink = GetTradeSkillItemLink(id)
if skillLink then
local quality = select(3, GetItemInfo(skillLink))
if quality and quality > 1 then
_G.TradeSkillSkillIcon:SetBackdropBorderColor(GetItemQualityColor(quality))
_G.TradeSkillSkillName:SetTextColor(GetItemQualityColor(quality))
else
_G.TradeSkillSkillIcon:SetBackdropBorderColor(unpack(AS.BorderColor))
_G.TradeSkillSkillName:SetTextColor(1, 1, 1)
end
end
local numReagents = GetTradeSkillNumReagents(id)
for i = 1, numReagents, 1 do
local _, _, reagentCount, playerReagentCount = GetTradeSkillReagentInfo(id, i)
local reagentLink = GetTradeSkillReagentItemLink(id, i)
local icon = _G['TradeSkillReagent'..i..'IconTexture']
local name = _G['TradeSkillReagent'..i..'Name']
if reagentLink then
local quality = select(3, GetItemInfo(reagentLink))
if quality and quality > 1 then
icon.Backdrop:SetBackdropBorderColor(GetItemQualityColor(quality))
if playerReagentCount < reagentCount then
name:SetTextColor(0.5, 0.5, 0.5)
else
name:SetTextColor(GetItemQualityColor(quality))
end
else
icon.Backdrop:SetBackdropBorderColor(unpack(AS.BorderColor))
end
end
end
end)
AS:UnregisterSkinEvent(addon, event)
end
function AS:Blizzard_TrainerUI(event, addon)
if addon ~= 'Blizzard_TrainerUI' then return end
AS:SkinBackdropFrame(ClassTrainerFrame, nil, nil, true)
AS:SkinCloseButton(ClassTrainerFrameCloseButton)
ClassTrainerFrame.Backdrop:SetPoint('TOPLEFT', 10, -11)
ClassTrainerFrame.Backdrop:SetPoint('BOTTOMRIGHT', -32, 74)
AS:SkinButton(ClassTrainerTrainButton, true)
AS:SkinButton(ClassTrainerCancelButton, true)
AS:SkinDropDownBox(ClassTrainerFrameFilterDropDown)
AS:StripTextures(_G.ClassTrainerListScrollFrame)
AS:SkinScrollBar(_G.ClassTrainerListScrollFrameScrollBar)
AS:StripTextures(_G.ClassTrainerDetailScrollFrame)
AS:SkinScrollBar(_G.ClassTrainerDetailScrollFrameScrollBar)
AS:StripTextures(_G.ClassTrainerSkillIcon)
hooksecurefunc('ClassTrainer_SetSelection', function()
local skillIcon = _G.ClassTrainerSkillIcon:GetNormalTexture()
if skillIcon then
skillIcon:SetInside()
AS:SkinTexture(skillIcon, true)
end
end)
for i = 1, _G.CLASS_TRAINER_SKILLS_DISPLAYED do
local button = _G['ClassTrainerSkill'..i]
local highlight = _G['ClassTrainerSkill'..i..'Highlight']
button:SetNormalTexture(AS.Media.Textures.Plus)
button.SetNormalTexture = AS.Noop
button:GetNormalTexture():SetSize(16, 16)
button:GetNormalTexture():SetPoint('LEFT', 5, 0)
highlight:SetTexture('')
highlight.SetTexture = AS.Noop
hooksecurefunc(button, 'SetNormalTexture', function(self, texture)
local tex = self:GetNormalTexture()
if strfind(texture, 'MinusButton') then
tex:SetTexture(AS.Media.Textures.Minus)
elseif strfind(texture, 'PlusButton') then
tex:SetTexture(AS.Media.Textures.Plus)
else
tex:SetTexture()
end
end)
end
AS:StripTextures(_G.ClassTrainerExpandButtonFrame)
_G.ClassTrainerCollapseAllButton:SetNormalTexture(AS.Media.Textures.Plus)
_G.ClassTrainerCollapseAllButton.SetNormalTexture = AS.Noop
_G.ClassTrainerCollapseAllButton:GetNormalTexture():SetPoint('LEFT', 3, 2)
_G.ClassTrainerCollapseAllButton:GetNormalTexture():SetSize(15, 15)
_G.ClassTrainerCollapseAllButton:SetHighlightTexture('')
_G.ClassTrainerCollapseAllButton.SetHighlightTexture = AS.Noop
_G.ClassTrainerCollapseAllButton:SetDisabledTexture(AS.Media.Textures.Plus)
_G.ClassTrainerCollapseAllButton.SetDisabledTexture = AS.Noop
_G.ClassTrainerCollapseAllButton:GetDisabledTexture():SetPoint('LEFT', 3, 2)
_G.ClassTrainerCollapseAllButton:GetDisabledTexture():SetSize(15, 15)
_G.ClassTrainerCollapseAllButton:GetDisabledTexture():SetDesaturated(true)
hooksecurefunc(_G.ClassTrainerCollapseAllButton, 'SetNormalTexture', function(self, texture)
local tex = self:GetNormalTexture()
if strfind(texture, 'MinusButton') then
tex:SetTexture(AS.Media.Textures.Minus)
else
tex:SetTexture(AS.Media.Textures.Plus)
end
end)
AS:UnregisterSkinEvent(addon, event)
end
AS:RegisterSkin("Blizzard_CraftUI", AS.Blizzard_CraftUI, 'ADDON_LOADED')
AS:RegisterSkin('Blizzard_TradeSkill', AS.Blizzard_TradeSkill, 'ADDON_LOADED')
AS:RegisterSkin("Blizzard_TrainerUI", AS.Blizzard_TrainerUI, 'ADDON_LOADED')