Add all settings
This commit is contained in:
69
Cyka.lua
69
Cyka.lua
@@ -11,6 +11,7 @@ local addonname, shared = ...
|
||||
---@field data CykaData
|
||||
---@field GetOrDefault fun(table: table<any, any>, keys: string[], default: any): any
|
||||
---@field DumpTable fun(table: table<any, any>, depth: number)
|
||||
---@field TableContains fun(table: table<any, any>, value: any): boolean
|
||||
---@field Autoloot Autoloot
|
||||
|
||||
---@class CykaData
|
||||
@@ -24,6 +25,17 @@ local addonname, shared = ...
|
||||
|
||||
---@class CykaAutoLootFilterConfig
|
||||
---@field gold { enabled: boolean }
|
||||
---@field orderResource { enabled: boolean }
|
||||
---@field mount { enabled: boolean }
|
||||
---@field ilvl { enabled: boolean, value: number }
|
||||
---@field profession { enabled: boolean, professions: string }
|
||||
---@field value { enabled: boolean, byStack: boolean, value: number }
|
||||
---@field greyvalue { enabled: boolean, byStack: boolean, value: number }
|
||||
---@field questItem { enabled: boolean }
|
||||
---@field classGear { enabled: boolean, ilvlThreshold: number, qualityThreshold: number }
|
||||
---@field name { enabled: boolean, exact: boolean, caseSensitive: boolean, whitelist: string }
|
||||
---@field boe { enabled: boolean, ilvlThreshold: number, qualityThreshold: number }
|
||||
---@field ap { enabled: boolean }
|
||||
|
||||
local function init()
|
||||
if not CykaPersistentData then CykaPersistentData = {} end
|
||||
@@ -74,13 +86,68 @@ local function init()
|
||||
end
|
||||
end
|
||||
|
||||
---@param table table<any, any>
|
||||
---@param value any
|
||||
shared.TableContains = function(table, value)
|
||||
for _, v in pairs(table) do
|
||||
if v == value then return true end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
shared.config = {
|
||||
autoloot = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "enabled" }, true),
|
||||
filter = {
|
||||
gold = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "gold", "enabled" }, true),
|
||||
}
|
||||
},
|
||||
orderResource = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "orderResource", "enabled" }, true),
|
||||
},
|
||||
mount = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "mount", "enabled" }, true),
|
||||
},
|
||||
ilvl = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "ilvl", "enabled" }, true),
|
||||
value = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "ilvl", "value" }, 910),
|
||||
},
|
||||
profession = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "profession", "enabled" }, true),
|
||||
professions = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "profession", "professions" }, ""),
|
||||
},
|
||||
value = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "value", "enabled" }, true),
|
||||
byStack = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "value", "byStack" }, false),
|
||||
value = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "value", "value" }, 10000),
|
||||
},
|
||||
greyvalue = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "greyvalue", "enabled" }, true),
|
||||
byStack = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "greyvalue", "byStack" }, false),
|
||||
value = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "greyvalue", "value" }, 100000),
|
||||
},
|
||||
questItem = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "questItem", "enabled" }, true),
|
||||
},
|
||||
classGear = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "classGear", "enabled" }, true),
|
||||
ilvlThreshold = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "classGear", "ilvlThreshold" }, 910),
|
||||
qualityThreshold = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "classGear", "qualityThreshold" }, 3),
|
||||
},
|
||||
boe = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "boe", "enabled" }, true),
|
||||
ilvlThreshold = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "boe", "ilvlThreshold" }, 910),
|
||||
qualityThreshold = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "boe", "qualityThreshold" }, 3),
|
||||
},
|
||||
ap = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "ap", "enabled" }, true),
|
||||
},
|
||||
name = {
|
||||
enabled = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "name", "enabled" }, false),
|
||||
exact = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "name", "exact" }, false),
|
||||
caseSensitive = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "name", "caseSensitive" }, false),
|
||||
whitelist = shared.GetOrDefault(CykaPersistentData.config, { "autoloot", "filter", "name", "whitelist" }, ""),
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user