You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.9 KiB
65 lines
1.9 KiB
local ADDON_NAME, PRIVATE_TABLE = ...
|
|
|
|
local L = LibStub("AceLocale-3.0"):GetLocale("AutoLooter")
|
|
local Color = PRIVATE_TABLE.Color
|
|
|
|
local AutoLooter = LibStub("AceAddon-3.0"):GetAddon("AutoLooter")
|
|
local module = AutoLooter:NewModule("Price", PRIVATE_TABLE.ToggleableModulePrototype, "AceEvent-3.0")
|
|
module.priority = 1000
|
|
|
|
local reason = Color.GREEN .. L["Price"]
|
|
|
|
function module:CanEnable()
|
|
return AutoLooter.db.profile.price > 0
|
|
end
|
|
|
|
function module:InitializeDb()
|
|
self.db = AutoLooter.db
|
|
end
|
|
|
|
function module.CanLoot(link, icon, sTitle, nQuantity, currencyID, nRarity, locked, isQuestItem, questId, isActive)
|
|
local _, _, _, _, _, itemType, itemSubType, _, _, _, iPrice = GetItemInfo(link)
|
|
if iPrice and (AutoLooter.db.profile.price > 0) and (iPrice >= AutoLooter.db.profile.price) then
|
|
return true, reason, AutoLooter.FormatLoot(icon, link, nQuantity), nil
|
|
end
|
|
end
|
|
|
|
function module:GetOptions()
|
|
return {
|
|
general = {
|
|
args = {
|
|
priceGroup = {
|
|
name = L["Price (in coppers)"],
|
|
type = "group",
|
|
inline = true,
|
|
order = 1000,
|
|
args = {
|
|
price = {
|
|
type = "range",
|
|
name = function()
|
|
local formatedPrice = "[" .. Color.RED .. L["Off"] .. "|r]"
|
|
if AutoLooter.db.profile.price > 0 then
|
|
formatedPrice = GetMoneyString(AutoLooter.db.profile.price)
|
|
end
|
|
return formatedPrice
|
|
end,
|
|
desc = function()
|
|
if AutoLooter.db.profile.price > 0 then
|
|
return L["Loot everything with a price greater or equal to this value"]
|
|
end
|
|
end,
|
|
min = 0,
|
|
max = 10000000,
|
|
softMax = 1000000,
|
|
step = 1,
|
|
width = "full",
|
|
set = function(info, value) module:SetProfileVar("price", value) end,
|
|
get = function(info) return AutoLooter.db.profile.price end
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
end
|