This commit is contained in:
Bunny67
2017-12-16 20:49:16 +03:00
parent 5585bc44b6
commit 15b978d2cb
2 changed files with 18 additions and 15 deletions
@@ -5,40 +5,39 @@ local S = E:GetModule("Skins");
--Lua functions --Lua functions
local _G = getfenv() local _G = getfenv()
local unpack = unpack local unpack = unpack
local match = string.match
--WoW API / Variables --WoW API / Variables
local GetItemQualityColor = GetItemQualityColor local GetItemQualityColor = GetItemQualityColor
local GetContainerItemInfo = GetContainerItemInfo local GetContainerItemLink = GetContainerItemLink
local BANK_CONTAINER = BANK_CONTAINER local BANK_CONTAINER = BANK_CONTAINER
local NUM_CONTAINER_FRAMES = NUM_CONTAINER_FRAMES local NUM_CONTAINER_FRAMES = NUM_CONTAINER_FRAMES
function S:ContainerFrame_Update(self) function S:ContainerFrame_Update(self)
local id = self:GetID() local id = self:GetID()
local name = self:GetName() local name = self:GetName()
local _, itemButton, cooldown, quality local _, itemButton, itemLink, quality
for i = 1, self.size, 1 do for i = 1, self.size, 1 do
itemButton = _G[name.."Item"..i] itemButton = _G[name.."Item"..i]
cooldown = _G[name.."Item"..i.."Cooldown"]
if cooldown then itemLink = GetContainerItemLink(id, itemButton:GetID())
E:RegisterCooldown(cooldown) if itemLink then
end _, _, quality = GetItemInfo(match(itemLink, "item:(%d+)"))
if quality then
_, _, _, quality = GetContainerItemInfo(id, itemButton:GetID())
if quality and quality > 1 then
itemButton:SetBackdropBorderColor(GetItemQualityColor(quality)) itemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
else else
itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor)) itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
end end
else
itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
end
end end
end end
function S:BankFrameItemButton_Update(button) function S:BankFrameItemButton_Update(button)
if not button.isBag then if not button.isBag then
local _, _, _, quality = GetContainerItemInfo(BANK_CONTAINER, button:GetID()) local _, _, _, quality = GetContainerItemInfo(BANK_CONTAINER, button:GetID())
if quality then
if quality and quality > 1 then
button:SetBackdropBorderColor(GetItemQualityColor(quality)) button:SetBackdropBorderColor(GetItemQualityColor(quality))
else else
button:SetBackdropBorderColor(unpack(E["media"].bordercolor)) button:SetBackdropBorderColor(unpack(E["media"].bordercolor))
@@ -66,14 +65,19 @@ local function LoadSkin()
for k = 1, MAX_CONTAINER_ITEMS, 1 do for k = 1, MAX_CONTAINER_ITEMS, 1 do
itemButton = _G["ContainerFrame"..i.."Item"..k] itemButton = _G["ContainerFrame"..i.."Item"..k]
itemButtonIcon = _G["ContainerFrame"..i.."Item"..k.."IconTexture"] itemButtonIcon = _G["ContainerFrame"..i.."Item"..k.."IconTexture"]
itemButtonCooldown = _G["ContainerFrame"..i.."Item"..k.."Cooldown"]
itemButton:SetNormalTexture(nil) itemButton:SetNormalTexture("")
E:SetTemplate(itemButton, "Default", true) E:SetTemplate(itemButton, "Default", true)
E:StyleButton(itemButton) E:StyleButton(itemButton)
E:SetInside(itemButtonIcon) E:SetInside(itemButtonIcon)
itemButtonIcon:SetTexCoord(unpack(E.TexCoords)) itemButtonIcon:SetTexCoord(unpack(E.TexCoords))
if itemButtonCooldown then
E:RegisterCooldown(itemButtonCooldown)
end
end end
end end
@@ -11,7 +11,6 @@ local find, format, split = string.find, string.format, string.split
--WoW API / Variables --WoW API / Variables
local GetItemInfo = GetItemInfo local GetItemInfo = GetItemInfo
local GetItemQualityColor = GetItemQualityColor local GetItemQualityColor = GetItemQualityColor
local HookScript
local hooksecurefunc = hooksecurefunc local hooksecurefunc = hooksecurefunc
local function LoadSkin() local function LoadSkin()