Rewrite NoBagAutomation module for 3.3.5

Generally because it wouldn't let me open bags by "Open All Bags" keybind.
This commit is contained in:
Sattva
2023-09-17 02:12:50 +03:00
parent 1227e10ea9
commit 6bf635e8af
2 changed files with 42 additions and 1 deletions
+40 -1
View File
@@ -1753,7 +1753,46 @@
----------------------------------------------------------------------
if LeaPlusLC["NoBagAutomation"] == "On" and not LeaLockList["NoBagAutomation"] then
RunScript("hooksecurefunc('OpenAllBags', CloseAllBags)")
local function ManageBackpack(event)
if event == "MERCHANT_SHOW" then
BACKPACK_WAS_OPEN = IsBagOpen(0)
if OpenBackpack ~= nil then
CloseBackpack()
end
elseif event == "MERCHANT_CLOSED" and not BACKPACK_WAS_OPEN then
CloseBackpack()
end
end
local frame = CreateFrame("Frame")
frame:RegisterEvent("MERCHANT_SHOW")
frame:RegisterEvent("MERCHANT_CLOSED")
frame:SetScript("OnEvent", function(self, event)
ManageBackpack(event)
end)
local function CustomCloseBackpack(closeFunction)
return function()
if not MERCHANT_FRAME_ACTIVE then
closeFunction()
end
end
end
hooksecurefunc("CloseBackpack", CustomCloseBackpack(CloseBackpack))
local function MerchantFrame_Active_OnShow()
MERCHANT_FRAME_ACTIVE = true
end
local function MerchantFrame_Active_OnHide()
MERCHANT_FRAME_ACTIVE = false
end
hooksecurefunc("MerchantFrame_OnShow", MerchantFrame_Active_OnShow)
hooksecurefunc("MerchantFrame_OnHide", MerchantFrame_Active_OnHide)
end
----------------------------------------------------------------------