43 lines
1.6 KiB
Lua
43 lines
1.6 KiB
Lua
-- MERCHANT_SHOW
|
|
function(allstates, e)
|
|
aura_env.allstates = allstates
|
|
|
|
if CanMerchantRepair() == true then RepairAllItems() end
|
|
|
|
for container = 0, 4 do
|
|
for slot = 1, GetContainerNumSlots(container) do
|
|
aura_env.filterService:run(container, slot)
|
|
local link = select(7, GetContainerItemInfo(container, slot))
|
|
if link then
|
|
local name = GetItemInfo(link)
|
|
local rarity = select(3, GetItemInfo(link))
|
|
local ilvl = select(4, GetItemInfo(link)) or 0
|
|
local type = select(6, GetItemInfo(link))
|
|
local price = select(11, GetItemInfo(link))
|
|
if price and price > 0 then
|
|
if aura_env.sellWhitelist[name] ~= 1 then
|
|
if rarity == 0 then
|
|
aura_env.toSell[#aura_env.toSell + 1] = {["container"] = container, ["slot"] = slot}
|
|
elseif (type == "Armor" or type == "Weapon") and ilvl < 350 then
|
|
aura_env.toSell[#aura_env.toSell + 1] = {["container"] = container, ["slot"] = slot}
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
aura_env.ticker = C_Timer.NewTicker(0.15, function()
|
|
if aura_env.toSell[1] then
|
|
UseContainerItem(aura_env.toSell[1].c, aura_env.toSell[1].s)
|
|
table.remove(aura_env.toSell, 1)
|
|
else
|
|
aura_env.ticker:Cancel()
|
|
end
|
|
if j >= GetContainerNumSlots(i) then i = i + 1
|
|
j = 1 end
|
|
if i >= 4 then aura_env.ticker:Cancel() end
|
|
end)
|
|
return true
|
|
end
|