mirror of
https://github.com/Bluewhale1337/ElvUIModernized.git
synced 2026-07-27 08:24:44 +00:00
update Merchant skin
This commit is contained in:
@@ -3,10 +3,16 @@ local S = E:GetModule("Skins");
|
|||||||
|
|
||||||
--Cache global variables
|
--Cache global variables
|
||||||
--Lua functions
|
--Lua functions
|
||||||
local _G = getfenv()
|
local _G = _G
|
||||||
local select = select
|
local select = select
|
||||||
local unpack = unpack
|
local unpack = unpack
|
||||||
|
local find, split = string.find, string.split
|
||||||
--WoW API / Variables
|
--WoW API / Variables
|
||||||
|
local GetBuybackItemInfo = GetBuybackItemInfo
|
||||||
|
local GetItemInfo = GetItemInfo
|
||||||
|
local GetItemQualityColor = GetItemQualityColor
|
||||||
|
local GetMerchantItemLink = GetMerchantItemLink
|
||||||
|
local GetItemLinkByName = GetItemLinkByName
|
||||||
local hooksecurefunc = hooksecurefunc
|
local hooksecurefunc = hooksecurefunc
|
||||||
|
|
||||||
local function LoadSkin()
|
local function LoadSkin()
|
||||||
@@ -37,9 +43,6 @@ local function LoadSkin()
|
|||||||
iconTexture:SetTexCoord(unpack(E.TexCoords))
|
iconTexture:SetTexCoord(unpack(E.TexCoords))
|
||||||
E:SetInside(iconTexture)
|
E:SetInside(iconTexture)
|
||||||
|
|
||||||
-- altCurrencyTex1:SetTexCoord(unpack(E.TexCoords))
|
|
||||||
-- altCurrencyTex2:SetTexCoord(unpack(E.TexCoords))
|
|
||||||
|
|
||||||
_G["MerchantItem" .. i .. "MoneyFrame"]:ClearAllPoints()
|
_G["MerchantItem" .. i .. "MoneyFrame"]:ClearAllPoints()
|
||||||
_G["MerchantItem" .. i .. "MoneyFrame"]:SetPoint("BOTTOMLEFT", itemButton, "BOTTOMRIGHT", 3, 0)
|
_G["MerchantItem" .. i .. "MoneyFrame"]:SetPoint("BOTTOMLEFT", itemButton, "BOTTOMRIGHT", 3, 0)
|
||||||
end
|
end
|
||||||
@@ -51,7 +54,7 @@ local function LoadSkin()
|
|||||||
E:SetTemplate(MerchantRepairItemButton, "Default", true)
|
E:SetTemplate(MerchantRepairItemButton, "Default", true)
|
||||||
for i = 1, MerchantRepairItemButton:GetNumRegions() do
|
for i = 1, MerchantRepairItemButton:GetNumRegions() do
|
||||||
local region = select(i, MerchantRepairItemButton:GetRegions())
|
local region = select(i, MerchantRepairItemButton:GetRegions())
|
||||||
if(region:GetObjectType() == "Texture") then
|
if region:GetObjectType() == "Texture" then
|
||||||
region:SetTexCoord(0.04, 0.24, 0.06, 0.5)
|
region:SetTexCoord(0.04, 0.24, 0.06, 0.5)
|
||||||
E:SetInside(region)
|
E:SetInside(region)
|
||||||
end
|
end
|
||||||
@@ -79,59 +82,77 @@ local function LoadSkin()
|
|||||||
|
|
||||||
hooksecurefunc("MerchantFrame_UpdateMerchantInfo", function()
|
hooksecurefunc("MerchantFrame_UpdateMerchantInfo", function()
|
||||||
local numMerchantItems = GetMerchantNumItems()
|
local numMerchantItems = GetMerchantNumItems()
|
||||||
local index
|
for i = 1, MERCHANT_ITEMS_PER_PAGE do
|
||||||
local itemButton, itemName, itemLink
|
local index = (((MerchantFrame.page - 1) * MERCHANT_ITEMS_PER_PAGE) + i)
|
||||||
for i = 1, BUYBACK_ITEMS_PER_PAGE do
|
local itemButton = _G["MerchantItem" .. i .. "ItemButton"]
|
||||||
index = (((MerchantFrame.page - 1) * MERCHANT_ITEMS_PER_PAGE) + i)
|
local itemName = _G["MerchantItem" .. i .. "Name"]
|
||||||
itemButton = _G["MerchantItem" .. i .. "ItemButton"]
|
|
||||||
itemName = _G["MerchantItem" .. i .. "Name"]
|
|
||||||
|
|
||||||
if(index <= numMerchantItems) then
|
if index <= numMerchantItems then
|
||||||
itemLink = GetMerchantItemLink(index)
|
local itemLink = GetMerchantItemLink(index)
|
||||||
if(itemLink) then
|
if itemLink then
|
||||||
for id in string.gfind(itemLink, "item:(%d+)") do
|
local itemString = select(3, find(itemLink, "|H(.+)|h"))
|
||||||
itemLink = id
|
local itemID = select(2, split(":", itemString))
|
||||||
end
|
local quality = select(3, GetItemInfo(itemID))
|
||||||
local _, _, quality = GetItemInfo(itemLink)
|
|
||||||
local r, g, b = GetItemQualityColor(quality)
|
|
||||||
|
|
||||||
itemName:SetTextColor(r, g, b)
|
|
||||||
if quality then
|
if quality then
|
||||||
itemButton:SetBackdropBorderColor(r, g, b)
|
itemName:SetTextColor(GetItemQualityColor(quality))
|
||||||
|
if quality > 1 then
|
||||||
|
itemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
|
||||||
else
|
else
|
||||||
itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
--local buybackName = GetBuybackItemInfo(GetNumBuybackItems())
|
local buybackName = GetBuybackItemInfo(GetNumBuybackItems())
|
||||||
--if buybackName then
|
if buybackName then
|
||||||
-- local r, g, b = GetItemQualityColor("???")
|
local itemLink = GetItemLinkByName(buybackName)
|
||||||
-- MerchantBuyBackItemName:SetTextColor(r, g, b)
|
if itemLink then
|
||||||
-- MerchantBuyBackItemItemButton:SetBackdropBorderColor(r, g, b)
|
local itemString = select(3, find(itemLink, "|H(.+)|h"))
|
||||||
--else
|
local itemID = select(2, split(":", itemString))
|
||||||
-- MerchantBuyBackItemItemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
local quality = select(3, GetItemInfo(itemID))
|
||||||
--end
|
if quality then
|
||||||
|
MerchantBuyBackItemName:SetTextColor(GetItemQualityColor(quality))
|
||||||
|
if quality > 1 then
|
||||||
|
MerchantBuyBackItemItemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
|
||||||
|
else
|
||||||
|
MerchantBuyBackItemItemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
||||||
|
end
|
||||||
|
else
|
||||||
|
MerchantBuyBackItemItemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
--hooksecurefunc("MerchantFrame_UpdateBuybackInfo", function()
|
hooksecurefunc("MerchantFrame_UpdateBuybackInfo", function()
|
||||||
-- local numBuybackItems = GetNumBuybackItems()
|
local numBuybackItems = GetNumBuybackItems()
|
||||||
-- local itemButton, itemName
|
for i = 1, BUYBACK_ITEMS_PER_PAGE do
|
||||||
-- for i = 1, BUYBACK_ITEMS_PER_PAGE do
|
local itemButton = _G["MerchantItem" .. i .. "ItemButton"]
|
||||||
-- itemButton = _G["MerchantItem" .. i .. "ItemButton"]
|
local itemName = _G["MerchantItem" .. i .. "Name"]
|
||||||
-- itemName = _G["MerchantItem" .. i .. "Name"]
|
|
||||||
--
|
if i <= numBuybackItems then
|
||||||
-- if i <= numBuybackItems then
|
local buybackName = GetBuybackItemInfo(i)
|
||||||
-- local buybackName = GetBuybackItemInfo(i)
|
if buybackName then
|
||||||
-- if buybackName then
|
local itemLink = GetItemLinkByName(buybackName)
|
||||||
-- local r, g, b = GetItemQualityColor("???")
|
if itemLink then
|
||||||
-- itemName:SetTextColor(r, g, b)
|
local itemString = select(3, find(itemLink, "|H(.+)|h"))
|
||||||
-- itemButton:SetBackdropBorderColor(r, g, b)
|
local itemID = select(2, split(":", itemString))
|
||||||
-- end
|
local quality = select(3, GetItemInfo(itemID))
|
||||||
-- end
|
if quality then
|
||||||
-- end
|
itemName:SetTextColor(GetItemQualityColor(quality))
|
||||||
--end)
|
if quality > 1 then
|
||||||
|
itemButton:SetBackdropBorderColor(GetItemQualityColor(quality))
|
||||||
|
else
|
||||||
|
itemButton:SetBackdropBorderColor(unpack(E["media"].bordercolor))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
S:AddCallback("Merchant", LoadSkin)
|
S:AddCallback("Merchant", LoadSkin)
|
||||||
Reference in New Issue
Block a user