Couple of fixes and a new feature for bank/GB (#25)

* Exclude crafting spells using Fel Blood

Updated cost calculation to exclude spells using Fel Blood in crafting.

* Epoch lua error fix

* Slow mail loot when low FPS to avoid double looting

* Allowing withdrawing items from bank/GB using "AH shortfall" to withdraw based on post cap and now ALSO minPrice of those items has to be above current DBMinBuyout.

* Fixing an infinite loop bug with invalid custom price of Default Craft Value Method

---------

Co-authored-by: Szyler <Szyler@Szyler.com>
This commit is contained in:
Szyler
2025-10-29 00:40:48 +01:00
committed by GitHub
parent ea602dbbce
commit c1d9d3f7c6
7 changed files with 50 additions and 11 deletions
+9 -3
View File
@@ -1315,6 +1315,7 @@ function TSM:ImportGroup(importStr, groupPath)
local items = {}
local currentSubPath = ""
local itemID, randomEnchant = nil, nil
for _, str in ipairs(TSMAPI:SafeStrSplit(importStr, ",")) do
str = str:trim()
local noSpaceStr = gsub(str, " ", "") -- forums like to add spaces
@@ -1327,7 +1328,7 @@ function TSM:ImportGroup(importStr, groupPath)
elseif strfind(noSpaceStr, "p") then
itemString = gsub(noSpaceStr, "p", "battlepet")
elseif strfind(noSpaceStr, ":") then
local itemID, randomEnchant = (":"):split(noSpaceStr)
itemID, randomEnchant = (":"):split(noSpaceStr)
if not tonumber(itemID) or not tonumber(randomEnchant) then return end
itemString = "item:"..tonumber(itemID)..":0:0:0:0:0:"..tonumber(randomEnchant)
end
@@ -1336,8 +1337,13 @@ function TSM:ImportGroup(importStr, groupPath)
currentSubPath = subPath
elseif itemString then
items[itemString] = currentSubPath
local item = Item:CreateFromID(tonumber(noSpaceStr))
item:Query()
itemID = itemID or noSpaceStr
if Item then
local item = Item:CreateFromID(tonumber(itemID))
item:Query()
else
TSMAPI:GetSafeItemInfo(tonumber(itemID))
end
else
return
end
+6 -2
View File
@@ -943,8 +943,12 @@ function private:LoadProfilesPage(container)
-- check if item is cached
local _,_,itemID = itemString:find("item:(%d+)")
if itemID then
local item = Item:CreateFromID(itemID)
item:Query()
if Item then
local item = Item:CreateFromID(itemID)
item:Query()
else
TSMAPI:GetSafeItemInfo(tonumber(itemID))
end
end
end
+1
View File
@@ -303,6 +303,7 @@ local Add = {
else
TSM:Print(L["Invalid custom price."].." "..err)
self:SetFocus()
return
end
else
args.callback(self, event, value)
+6 -2
View File
@@ -239,8 +239,12 @@ function TSM:OnInitialize()
-- check if item is cached
local _,_,itemID = itemString:find("item:(%d+)")
if itemID then
local item = Item:CreateFromID(itemID)
item:Query()
if Item then
local item = Item:CreateFromID(itemID)
item:Query()
else
TSMAPI:GetSafeItemInfo(tonumber(itemID))
end
end
if strfind(itemString, " ") then
local newItemString = gsub(itemString, " ", "")