More fixes and small reworks
This commit is contained in:
@@ -15,7 +15,9 @@ end
|
|||||||
---@return string, string|nil
|
---@return string, string|nil
|
||||||
local function getItemName(slot)
|
local function getItemName(slot)
|
||||||
if slot == nil then return "", string.format("Slot can not be null") end
|
if slot == nil then return "", string.format("Slot can not be null") end
|
||||||
return select(2, GetLootSlotInfo(slot)), nil
|
local name = select(2, GetLootSlotInfo(slot))
|
||||||
|
if name == nil then return "", string.format("GetLootSlotInfo returned nil for slot %d", slot) end
|
||||||
|
return name, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return string, string|nil
|
---@return string, string|nil
|
||||||
@@ -23,7 +25,9 @@ local function getItemType(slot)
|
|||||||
if slot == nil then return "", string.format("Slot can not be nil") end
|
if slot == nil then return "", string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return "", err end
|
if err then return "", err end
|
||||||
return select(6, GetItemInfo(itemLink)), nil
|
local itemType = select(6, GetItemInfo(itemLink))
|
||||||
|
if itemType == nil then return "", string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return itemType, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return string, string|nil
|
---@return string, string|nil
|
||||||
@@ -31,7 +35,9 @@ local function getItemSubtype(slot)
|
|||||||
if slot == nil then return "", string.format("Slot can not be nil") end
|
if slot == nil then return "", string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return "", err end
|
if err then return "", err end
|
||||||
return select(7, GetItemInfo(itemLink)), nil
|
local itemSubtype = select(7, GetItemInfo(itemLink))
|
||||||
|
if itemSubtype == nil then return "", string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return itemSubtype, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return number, string|nil
|
---@return number, string|nil
|
||||||
@@ -39,7 +45,9 @@ local function getItemLevel(slot)
|
|||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 0, err end
|
if err then return 0, err end
|
||||||
return select(4, GetItemInfo(itemLink)), nil
|
local itemLevel = select(4, GetItemInfo(itemLink))
|
||||||
|
if itemLevel == nil then return 0, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return itemLevel, nil
|
||||||
end
|
end
|
||||||
|
|
||||||
---The vendor price in copper, or 0 for items that cannot be sold
|
---The vendor price in copper, or 0 for items that cannot be sold
|
||||||
@@ -49,7 +57,9 @@ local function getItemValue(slot)
|
|||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 0, err end
|
if err then return 0, err end
|
||||||
return select(11, GetItemInfo(itemLink)), nil
|
local value = select(11, GetItemInfo(itemLink))
|
||||||
|
if value == nil then return 0, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return value, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return number, string|nil
|
---@return number, string|nil
|
||||||
@@ -57,13 +67,17 @@ local function getItemSubclassId(slot)
|
|||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 0, err end
|
if err then return 0, err end
|
||||||
return select(13, GetItemInfo(itemLink)), nil
|
local subclassId = select(12, GetItemInfo(itemLink))
|
||||||
|
if subclassId == nil then return 0, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return subclassId, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return number, string|nil
|
---@return number, string|nil
|
||||||
local function getItemQuantity(slot)
|
local function getItemQuantity(slot)
|
||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
return select(3, GetLootSlotInfo(slot)), nil
|
local quantity = select(3, GetLootSlotInfo(slot))
|
||||||
|
if quantity == nil then return 0, string.format("GetLootSlotInfo returned nil for slot %d", slot) end
|
||||||
|
return quantity, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return Enum.ItemQuality, string|nil
|
---@return Enum.ItemQuality, string|nil
|
||||||
@@ -71,7 +85,9 @@ local function getItemQuality(slot)
|
|||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 0, err end
|
if err then return 0, err end
|
||||||
return select(3, GetItemInfo(itemLink)), nil
|
local quality = select(3, GetItemInfo(itemLink))
|
||||||
|
if quality == nil then return 0, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return quality, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return string, string|nil
|
---@return string, string|nil
|
||||||
@@ -79,7 +95,9 @@ local function getItemEquipLocation(slot)
|
|||||||
if slot == nil then return "", string.format("Slot can not be nil") end
|
if slot == nil then return "", string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return "", err end
|
if err then return "", err end
|
||||||
return select(9, GetItemInfo(itemLink)), nil
|
local equipLoc = select(9, GetItemInfo(itemLink))
|
||||||
|
if equipLoc == nil then return "", string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return equipLoc, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return number, string|nil
|
---@return number, string|nil
|
||||||
@@ -87,7 +105,9 @@ local function getItemIcon(slot)
|
|||||||
if slot == nil then return 134400, string.format("Slot can not be nil") end
|
if slot == nil then return 134400, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 134400, err end
|
if err then return 134400, err end
|
||||||
return select(10, GetItemInfo(itemLink)), nil
|
local icon = select(10, GetItemInfo(itemLink))
|
||||||
|
if icon == nil then return 134400, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return icon, nil
|
||||||
end
|
end
|
||||||
---@param slot number
|
---@param slot number
|
||||||
---@return number, string|nil
|
---@return number, string|nil
|
||||||
@@ -95,23 +115,22 @@ local function getBindType(slot)
|
|||||||
if slot == nil then return 0, string.format("Slot can not be nil") end
|
if slot == nil then return 0, string.format("Slot can not be nil") end
|
||||||
local itemLink, err = getItemLink(slot)
|
local itemLink, err = getItemLink(slot)
|
||||||
if err then return 0, err end
|
if err then return 0, err end
|
||||||
return select(14, GetItemInfo(itemLink)), nil
|
local bindType = select(14, GetItemInfo(itemLink))
|
||||||
|
if bindType == nil then return 0, string.format("GetItemInfo returned nil for slot %d", slot) end
|
||||||
|
return bindType, nil
|
||||||
end
|
end
|
||||||
|
|
||||||
---@class Filter
|
---@class Filter
|
||||||
---@field enabled boolean
|
|
||||||
---@field requires table<string, fun(slot: number): string|number|boolean> | nil
|
---@field requires table<string, fun(slot: number): string|number|boolean> | nil
|
||||||
---@field filter fun(slot: number, provided: table<string, string|number|boolean>): boolean
|
---@field filter fun(slot: number, provided: table<string, string|number|boolean>): boolean
|
||||||
Filter = {
|
Filter = {
|
||||||
---@param enabled boolean
|
|
||||||
---@param requires table<string, fun(slot: number): string|number|boolean> | nil
|
---@param requires table<string, fun(slot: number): string|number|boolean> | nil
|
||||||
---@param filter fun(slot: number, provided: table<string, string|number|boolean>): boolean
|
---@param filter fun(slot: number, provided: table<string, string|number|boolean>): boolean
|
||||||
---@return Filter
|
---@return Filter
|
||||||
new = function(enabled, requires, filter)
|
new = function(requires, filter)
|
||||||
local self = setmetatable({}, {
|
local self = setmetatable({}, {
|
||||||
__index = Filter
|
__index = Filter
|
||||||
})
|
})
|
||||||
self.enabled = enabled
|
|
||||||
self.requires = requires
|
self.requires = requires
|
||||||
self.filter = filter
|
self.filter = filter
|
||||||
return self
|
return self
|
||||||
@@ -128,9 +147,9 @@ Filter = {
|
|||||||
local res, err = v(slot)
|
local res, err = v(slot)
|
||||||
if err ~= nil then
|
if err ~= nil then
|
||||||
if debug then print(err) end
|
if debug then print(err) end
|
||||||
else
|
return false, err
|
||||||
provided[k] = res
|
|
||||||
end
|
end
|
||||||
|
provided[k] = res
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
local res, err = self.filter(slot, provided)
|
local res, err = self.filter(slot, provided)
|
||||||
@@ -141,8 +160,7 @@ Filter = {
|
|||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
local goldFilter = Filter.new(true,
|
local goldFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if string.find(provided.name, "Gold") or
|
if string.find(provided.name, "Gold") or
|
||||||
@@ -154,8 +172,7 @@ local goldFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Gold filter fail for %s", provided.name)) end
|
if debug then print(string.format("Gold filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local orderResourcesFilter = Filter.new(true,
|
local orderResourcesFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if string.find(provided.name, "Order Resources") then
|
if string.find(provided.name, "Order Resources") then
|
||||||
@@ -165,8 +182,7 @@ local orderResourcesFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Order resource filter fail for %s", provided.name)) end
|
if debug then print(string.format("Order resource filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local mountFilter = Filter.new(true,
|
local mountFilter = Filter.new({ ["type"] = getItemType },
|
||||||
{ ["type"] = getItemType },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { type: string }
|
---@cast provided { type: string }
|
||||||
if provided.type == "Mount" then
|
if provided.type == "Mount" then
|
||||||
@@ -176,8 +192,7 @@ local mountFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Mount filter fail for type %s", provided.type)) end
|
if debug then print(string.format("Mount filter fail for type %s", provided.type)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local ilvlFilter = Filter.new(true,
|
local ilvlFilter = Filter.new({ ["ilvl"] = getItemLevel },
|
||||||
{ ["ilvl"] = getItemLevel },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { ilvl: number }
|
---@cast provided { ilvl: number }
|
||||||
if provided.ilvl and provided.ilvl > 800 then
|
if provided.ilvl and provided.ilvl > 800 then
|
||||||
@@ -187,8 +202,7 @@ local ilvlFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("ilvl filter fail for ilvl %d", provided.ilvl)) end
|
if debug then print(string.format("ilvl filter fail for ilvl %d", provided.ilvl)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local professionFilter = Filter.new(true,
|
local professionFilter = Filter.new({
|
||||||
{
|
|
||||||
["type"] = getItemType,
|
["type"] = getItemType,
|
||||||
["subtype"] = getItemSubtype
|
["subtype"] = getItemSubtype
|
||||||
},
|
},
|
||||||
@@ -214,8 +228,7 @@ local professionFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Profession filter fail for type %s", provided.type)) end
|
if debug then print(string.format("Profession filter fail for type %s", provided.type)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local valueFilter = Filter.new(true,
|
local valueFilter = Filter.new({
|
||||||
{
|
|
||||||
["value"] = getItemValue,
|
["value"] = getItemValue,
|
||||||
["quantity"] = getItemQuality
|
["quantity"] = getItemQuality
|
||||||
},
|
},
|
||||||
@@ -235,8 +248,7 @@ local valueFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Value filter fail for value %d", value)) end
|
if debug then print(string.format("Value filter fail for value %d", value)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local greyValueFilter = Filter.new(true,
|
local greyValueFilter = Filter.new({
|
||||||
{
|
|
||||||
["quality"] = getItemQuality,
|
["quality"] = getItemQuality,
|
||||||
["value"] = getItemValue,
|
["value"] = getItemValue,
|
||||||
["quantity"] = getItemQuantity
|
["quantity"] = getItemQuantity
|
||||||
@@ -265,8 +277,7 @@ local greyValueFilter = Filter.new(true,
|
|||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local questItemFilter = Filter.new(true,
|
local questItemFilter = Filter.new({
|
||||||
{
|
|
||||||
["type"] = getItemType,
|
["type"] = getItemType,
|
||||||
["subtype"] = getItemSubtype
|
["subtype"] = getItemSubtype
|
||||||
},
|
},
|
||||||
@@ -285,8 +296,7 @@ local questItemFilter = Filter.new(true,
|
|||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local classGearFilter = Filter.new(true,
|
local classGearFilter = Filter.new({
|
||||||
{
|
|
||||||
["ilvl"] = getItemLevel,
|
["ilvl"] = getItemLevel,
|
||||||
["quality"] = getItemQuality,
|
["quality"] = getItemQuality,
|
||||||
["type"] = getItemType,
|
["type"] = getItemType,
|
||||||
@@ -314,8 +324,7 @@ local classGearFilter = Filter.new(true,
|
|||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local arguniteFilter = Filter.new(true,
|
local arguniteFilter = Filter.new({
|
||||||
{
|
|
||||||
["name"] = getItemName,
|
["name"] = getItemName,
|
||||||
["quality"] = getItemQuality
|
["quality"] = getItemQuality
|
||||||
},
|
},
|
||||||
@@ -331,8 +340,7 @@ local arguniteFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Argunite filter fail for %s and quality %d", provided.name, provided.quality)) end
|
if debug then print(string.format("Argunite filter fail for %s and quality %d", provided.name, provided.quality)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local ancientManaFilter = Filter.new(true,
|
local ancientManaFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if string.find(provided.name, "Ancient Mana") then
|
if string.find(provided.name, "Ancient Mana") then
|
||||||
@@ -342,8 +350,7 @@ local ancientManaFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Ancient Mana filter fail for %s", provided.name)) end
|
if debug then print(string.format("Ancient Mana filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local reicpeFilter = Filter.new(false,
|
local reicpeFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if string.find(provided.name, "Recipe") or string.find(provided.name, "Technique") then
|
if string.find(provided.name, "Recipe") or string.find(provided.name, "Technique") then
|
||||||
@@ -353,8 +360,7 @@ local reicpeFilter = Filter.new(false,
|
|||||||
if debug then print(string.format("Recipe filter fail for %s", provided.name)) end
|
if debug then print(string.format("Recipe filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local bloodOfSargerasFilter = Filter.new(true,
|
local bloodOfSargerasFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if provided.name == "Blood of Sargeras" then
|
if provided.name == "Blood of Sargeras" then
|
||||||
@@ -364,8 +370,7 @@ local bloodOfSargerasFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Blood of Sargeras filter fail for %s", provided.name)) end
|
if debug then print(string.format("Blood of Sargeras filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local bloodhunerQuarryFilter = Filter.new(true,
|
local bloodhunerQuarryFilter = Filter.new({ ["name"] = getItemName },
|
||||||
{ ["name"] = getItemName },
|
|
||||||
function(slot, provided)
|
function(slot, provided)
|
||||||
---@cast provided { name: string }
|
---@cast provided { name: string }
|
||||||
if provided.name == "Bloodhunter's Quarry" then
|
if provided.name == "Bloodhunter's Quarry" then
|
||||||
@@ -375,8 +380,7 @@ local bloodhunerQuarryFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("Bloodhunter's Quarry filter fail for %s", provided.name)) end
|
if debug then print(string.format("Bloodhunter's Quarry filter fail for %s", provided.name)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local boeFilter = Filter.new(true,
|
local boeFilter = Filter.new({
|
||||||
{
|
|
||||||
["ilvl"] = getItemLevel,
|
["ilvl"] = getItemLevel,
|
||||||
["type"] = getItemType,
|
["type"] = getItemType,
|
||||||
["quality"] = getItemQuality,
|
["quality"] = getItemQuality,
|
||||||
@@ -409,7 +413,7 @@ local boeFilter = Filter.new(true,
|
|||||||
if debug then print(string.format("BoE filter fail for ilvl %d and quality %d", provided.ilvl, provided.quality)) end
|
if debug then print(string.format("BoE filter fail for ilvl %d and quality %d", provided.ilvl, provided.quality)) end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
local artifactPowerFilter = Filter.new(true, {
|
local artifactPowerFilter = Filter.new({
|
||||||
["type"] = getItemType,
|
["type"] = getItemType,
|
||||||
["subtype"] = getItemSubtype,
|
["subtype"] = getItemSubtype,
|
||||||
["subclassid"] = getItemSubclassId,
|
["subclassid"] = getItemSubclassId,
|
||||||
@@ -424,50 +428,13 @@ local artifactPowerFilter = Filter.new(true, {
|
|||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
if debug then
|
if debug then
|
||||||
|
DevTools_Dump(provided)
|
||||||
print(string.format("Artifact power filter fail for type %s and subtype %s and subclassid %d with value %d",
|
print(string.format("Artifact power filter fail for type %s and subtype %s and subclassid %d with value %d",
|
||||||
provided.type, provided.subtype, provided.subclassid, provided.value))
|
provided.type, provided.subtype, provided.subclassid, provided.value))
|
||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- [09:19 AM] Dump: value=GetItemInfo("Elemental Pebbles")
|
|
||||||
-- [09:19 AM] [1]="Elemental Pebbles",
|
|
||||||
-- [09:19 AM] [2]="|cff9d9d9d|Hitem:132217::::::::110:72::::::|h[Elemental Pebbles]|h|r",
|
|
||||||
-- [09:19 AM] [3]=0,
|
|
||||||
-- [09:19 AM] [4]=100,
|
|
||||||
-- [09:19 AM] [5]=1,
|
|
||||||
-- [09:19 AM] [6]="Consumable",
|
|
||||||
-- [09:19 AM] [7]="Other",
|
|
||||||
-- [09:19 AM] [8]=20,
|
|
||||||
-- [09:19 AM] [9]="",
|
|
||||||
-- [09:19 AM] [10]=135234,
|
|
||||||
-- [09:19 AM] [11]=27075,
|
|
||||||
-- [09:19 AM] [12]=0,
|
|
||||||
-- [09:19 AM] [13]=8,
|
|
||||||
-- [09:19 AM] [14]=0,
|
|
||||||
-- [09:19 AM] [15]=0,
|
|
||||||
-- [09:19 AM] [17]=false
|
|
||||||
|
|
||||||
GetItemInfo("Brief History of the Ages")
|
|
||||||
|
|
||||||
-- [09:19 AM] Dump: value=GetItemInfo("Brief History of the Ages")
|
|
||||||
-- [09:19 AM] [1]="Brief History of the Ages",
|
|
||||||
-- [09:19 AM] [2]="|cffa335ee|Hitem:138782::::::::110:72::::::|h[Brief History of the Ages]|h|r",
|
|
||||||
-- [09:19 AM] [3]=4,
|
|
||||||
-- [09:19 AM] [4]=110,
|
|
||||||
-- [09:19 AM] [5]=0,
|
|
||||||
-- [09:19 AM] [6]="Consumable",
|
|
||||||
-- [09:19 AM] [7]="Other",
|
|
||||||
-- [09:19 AM] [8]=200,
|
|
||||||
-- [09:19 AM] [9]="",
|
|
||||||
-- [09:19 AM] [10]=134946,
|
|
||||||
-- [09:19 AM] [11]=0,
|
|
||||||
-- [09:19 AM] [12]=0,
|
|
||||||
-- [09:19 AM] [13]=8,
|
|
||||||
-- [09:19 AM] [14]=1,
|
|
||||||
-- [09:19 AM] [15]=6,
|
|
||||||
-- [09:19 AM] [17]=false
|
|
||||||
|
|
||||||
-- local azeriteFilter = {
|
-- local azeriteFilter = {
|
||||||
-- enabled = true,
|
-- enabled = true,
|
||||||
-- ilvlThreshold = 800,
|
-- ilvlThreshold = 800,
|
||||||
@@ -502,7 +469,7 @@ local filters = {
|
|||||||
orderResourcesFilter,
|
orderResourcesFilter,
|
||||||
professionFilter,
|
professionFilter,
|
||||||
questItemFilter,
|
questItemFilter,
|
||||||
reicpeFilter,
|
-- reicpeFilter,
|
||||||
valueFilter,
|
valueFilter,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -513,8 +480,16 @@ aura_env.FilterService = {
|
|||||||
---@type table<number>
|
---@type table<number>
|
||||||
local slotsToLoot = {}
|
local slotsToLoot = {}
|
||||||
for slot, item in pairs(lootInfo) do
|
for slot, item in pairs(lootInfo) do
|
||||||
|
if debug then
|
||||||
|
local itemname = getItemName(slot)
|
||||||
|
print(string.format("Checking slot %d for %s", slot, itemname))
|
||||||
|
end
|
||||||
for _, filter in pairs(filters) do
|
for _, filter in pairs(filters) do
|
||||||
if filter:Run(slot) then
|
local res, err = filter:Run(slot)
|
||||||
|
if err then
|
||||||
|
if debug then print(err) end
|
||||||
|
end
|
||||||
|
if res then
|
||||||
slotsToLoot[#slotsToLoot + 1] = slot
|
slotsToLoot[#slotsToLoot + 1] = slot
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user