146 lines
5.2 KiB
Lua
146 lines
5.2 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, select = unpack, select
|
|
--WoW API / Variables
|
|
local GetItemInfo = GetItemInfo
|
|
local GetItemQualityColor = GetItemQualityColor
|
|
local GetTradePlayerItemLink = GetTradePlayerItemLink
|
|
local GetTradeTargetItemLink = GetTradeTargetItemLink
|
|
|
|
S:AddCallback("Skin_Trade", function()
|
|
if not E.private.skins.blizzard.enable or not E.private.skins.blizzard.trade then return end
|
|
|
|
TradeFrame:StripTextures(true)
|
|
TradeFrame:CreateBackdrop("Transparent")
|
|
TradeFrame.backdrop:Point("TOPLEFT", 11, -12)
|
|
TradeFrame.backdrop:Point("BOTTOMRIGHT", -21, 49)
|
|
|
|
S:SetUIPanelWindowInfo(TradeFrame, "width")
|
|
S:SetBackdropHitRect(TradeFrame)
|
|
|
|
S:HandleCloseButton(TradeFrameCloseButton, TradeFrame.backdrop)
|
|
|
|
S:HandleButton(TradeFrameTradeButton)
|
|
S:HandleButton(TradeFrameCancelButton)
|
|
|
|
S:HandleEditBox(TradePlayerInputMoneyFrameGold)
|
|
S:HandleEditBox(TradePlayerInputMoneyFrameSilver)
|
|
S:HandleEditBox(TradePlayerInputMoneyFrameCopper)
|
|
|
|
for i = 1, MAX_TRADE_ITEMS do
|
|
local player = _G["TradePlayerItem"..i]
|
|
local recipient = _G["TradeRecipientItem"..i]
|
|
local playerButton = _G["TradePlayerItem"..i.."ItemButton"]
|
|
local playerButtonIcon = _G["TradePlayerItem"..i.."ItemButtonIconTexture"]
|
|
local recipientButton = _G["TradeRecipientItem"..i.."ItemButton"]
|
|
local recipientButtonIcon = _G["TradeRecipientItem"..i.."ItemButtonIconTexture"]
|
|
|
|
player:StripTextures()
|
|
recipient:StripTextures()
|
|
|
|
playerButton:StripTextures()
|
|
playerButton:StyleButton()
|
|
playerButton:SetTemplate("Default", true)
|
|
|
|
playerButtonIcon:SetInside()
|
|
playerButtonIcon:SetTexCoord(unpack(E.TexCoords))
|
|
|
|
recipientButton:StripTextures()
|
|
recipientButton:StyleButton()
|
|
recipientButton:SetTemplate("Default", true)
|
|
|
|
recipientButtonIcon:SetInside()
|
|
recipientButtonIcon:SetTexCoord(unpack(E.TexCoords))
|
|
|
|
playerButton.bg = CreateFrame("Frame", nil, playerButton)
|
|
playerButton.bg:SetTemplate("Default")
|
|
playerButton.bg:Point("TOPLEFT", playerButton, "TOPRIGHT", 4, 0)
|
|
playerButton.bg:Point("BOTTOMRIGHT", _G["TradePlayerItem"..i.."NameFrame"], "BOTTOMRIGHT", 0, 14)
|
|
playerButton.bg:SetFrameLevel(playerButton:GetFrameLevel() - 3)
|
|
|
|
recipientButton.bg = CreateFrame("Frame", nil, recipientButton)
|
|
recipientButton.bg:SetTemplate("Default")
|
|
recipientButton.bg:Point("TOPLEFT", recipientButton, "TOPRIGHT", 4, 0)
|
|
recipientButton.bg:Point("BOTTOMRIGHT", _G["TradeRecipientItem"..i.."NameFrame"], "BOTTOMRIGHT", 0, 14)
|
|
recipientButton.bg:SetFrameLevel(recipientButton:GetFrameLevel() - 3)
|
|
end
|
|
|
|
TradeHighlightPlayerTop:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightPlayerBottom:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightPlayerMiddle:SetTexture(0, 1, 0, 0.2)
|
|
|
|
TradeHighlightPlayerEnchantTop:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightPlayerEnchantBottom:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightPlayerEnchantMiddle:SetTexture(0, 1, 0, 0.2)
|
|
|
|
TradeHighlightRecipientTop:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightRecipientBottom:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightRecipientMiddle:SetTexture(0, 1, 0, 0.2)
|
|
|
|
TradeHighlightRecipientEnchantTop:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightRecipientEnchantBottom:SetTexture(0, 1, 0, 0.2)
|
|
TradeHighlightRecipientEnchantMiddle:SetTexture(0, 1, 0, 0.2)
|
|
|
|
TradeHighlightPlayer:SetFrameStrata("HIGH")
|
|
TradeHighlightRecipient:SetFrameStrata("HIGH")
|
|
TradeHighlightPlayerEnchant:SetFrameStrata("HIGH")
|
|
TradeHighlightRecipientEnchant:SetFrameStrata("HIGH")
|
|
|
|
hooksecurefunc("TradeFrame_UpdatePlayerItem", function(id)
|
|
local tradeItemButton = _G["TradePlayerItem"..id.."ItemButton"]
|
|
local link = GetTradePlayerItemLink(id)
|
|
|
|
if link then
|
|
local tradeItemName = _G["TradePlayerItem"..id.."Name"]
|
|
local quality = select(3, GetItemInfo(link))
|
|
|
|
tradeItemName:SetTextColor(GetItemQualityColor(quality))
|
|
|
|
if quality then
|
|
tradeItemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
|
|
else
|
|
tradeItemButton:SetBackdropBorderColor(unpack(E.media.bordercolor))
|
|
end
|
|
else
|
|
tradeItemButton:SetBackdropBorderColor(unpack(E.media.bordercolor))
|
|
end
|
|
end)
|
|
|
|
hooksecurefunc("TradeFrame_UpdateTargetItem", function(id)
|
|
local tradeItemButton = _G["TradeRecipientItem"..id.."ItemButton"]
|
|
local link = GetTradeTargetItemLink(id)
|
|
|
|
if link then
|
|
local tradeItemName = _G["TradeRecipientItem"..id.."Name"]
|
|
local quality = select(3, GetItemInfo(link))
|
|
|
|
tradeItemName:SetTextColor(GetItemQualityColor(quality))
|
|
|
|
if quality then
|
|
tradeItemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
|
|
else
|
|
tradeItemButton:SetBackdropBorderColor(unpack(E.media.bordercolor))
|
|
end
|
|
else
|
|
tradeItemButton:SetBackdropBorderColor(unpack(E.media.bordercolor))
|
|
end
|
|
end)
|
|
|
|
TradePlayerInputMoneyFrame:Point("TOPLEFT", 26, -53)
|
|
TradeRecipientMoneyFrame:Point("TOPRIGHT", -40, -58)
|
|
|
|
TradePlayerItem1:Point("TOPLEFT", 23, -94)
|
|
TradeRecipientItem1:Point("TOPLEFT", 196, -94)
|
|
|
|
TradeHighlightPlayer:Height(263)
|
|
TradeHighlightRecipient:Height(263)
|
|
TradeHighlightPlayer:Point("TOPLEFT", 20, -91)
|
|
TradeHighlightRecipient:Point("TOPLEFT", 193, -91)
|
|
|
|
TradeFramePlayerEnchantText:Point("TOPLEFT", 26, -364)
|
|
|
|
TradeFrameTradeButton:Point("BOTTOMRIGHT", -113, 61)
|
|
end) |