Files
wow-weakauras/LegionWA/AutoVendor/Event.lua
2022-08-18 23:50:43 +02:00

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