diff --git a/TradeSkillMaster/Core/Mover.lua b/TradeSkillMaster/Core/Mover.lua index 17728aa..5a16d16 100644 --- a/TradeSkillMaster/Core/Mover.lua +++ b/TradeSkillMaster/Core/Mover.lua @@ -14,9 +14,23 @@ local AceGUI = LibStub("AceGUI-3.0") -- load the AceGUI libraries local lib = TSMAPI local bankType +local ascensionBankType -- Ascension WoW: "personal", "realm", or nil for real guild bank local fullMoves, splitMoves, bagState = {}, {}, {} local callbackMsg = {} +-- Ascension WoW: Detect bank type based on first tab name +local function GetAscensionBankType() + local numTabs = GetNumGuildBankTabs() + if numTabs == 0 then return nil end + local firstTabName = GetGuildBankTabInfo(1) + if firstTabName == "Personal Bank" then + return "personal" + elseif firstTabName == "Realm Bank" then + return "realm" + end + return nil +end + -- this is a set of wrapper functions so that I can switch -- between guildbank and bank function easily (taken from warehousing) @@ -42,6 +56,7 @@ function TSM:OnEnable() TSM:RegisterEvent("GUILDBANKFRAME_OPENED", function(event) bankType = "guildbank" + ascensionBankType = GetAscensionBankType() -- Ascension WoW: detect personal/realm bank end) TSM:RegisterEvent("BANKFRAME_OPENED", function(event) @@ -50,6 +65,7 @@ function TSM:OnEnable() TSM:RegisterEvent("GUILDBANKFRAME_CLOSED", function(event, addon) bankType = nil + ascensionBankType = nil -- Ascension WoW: reset TSM:UnregisterEvent("GUILDBANKBAGSLOTS_CHANGED") end) @@ -402,13 +418,23 @@ function TSM.generateMoves(includeSoulbound) if next(fullMoves) ~= nil then if bankType == "guildbank" then - TSMAPI:CreateTimeDelay("moveItem", 0.05, TSM.moveItem, 0.35) + -- Ascension WoW: Personal/Realm banks don't need slow delays like real guild banks + if ascensionBankType then + TSMAPI:CreateTimeDelay("moveItem", 0.05, TSM.moveItem, 0.05) + else + TSMAPI:CreateTimeDelay("moveItem", 0.05, TSM.moveItem, 0.35) + end else TSMAPI:CreateTimeDelay("moveItem", 0.05, TSM.moveItem, 0.05) end elseif next(splitMoves) ~= nil then if bankType == "guildbank" then - TSMAPI:CreateTimeDelay("moveSplitItem", 0.05, TSM.moveSplitItem, 0.75) + -- Ascension WoW: Personal/Realm banks don't need slow delays like real guild banks + if ascensionBankType then + TSMAPI:CreateTimeDelay("moveSplitItem", 0.05, TSM.moveSplitItem, 0.1) + else + TSMAPI:CreateTimeDelay("moveSplitItem", 0.05, TSM.moveSplitItem, 0.75) + end else TSMAPI:CreateTimeDelay("moveSplitItem", 0.05, TSM.moveSplitItem, 0.4) end