Feature request: Pause offhand auto-queue when a two-hander is equipped
economou opened this issue ยท 4 comments
Feral Druids like to auto-queue their offhand for on-use items like Ancient Cornerstone Grimoire. But, this makes it impossible to equip a two-hand weapon like Manual Crowd Pummeler or Will of Arlokk (for Innervate) - the auto-queue will unequip the 2H weapon and equip an offhand, leaving the main hand empty.
Even if you auto-queue the main hand slot and select "Pause Queue" for the two-hander, this doesn't pause the offhand queue. Equipping the two-hander will trigger the offhand queue to re-equip your offhand.
Ideally, equipping a two-hander should just automatically pause the offhand queue.
I'm new to Lua and to the WoW API, but I think I managed to fix this. I added the following inside function ItemRack.ProcessAutoQueue(slot)
, near the top:
-- don't process offhand queue if a two-hander is equipped in the main hand slot
if slot==INVSLOT_OFFHAND then
local mhID = GetInventoryItemID("player",INVSLOT_MAINHAND)
local mhClass, mhSubclass = select(12, GetItemInfo(mhID))
if (mhClass==LE_ITEM_CLASS_WEAPON) and (mhSubclass==LE_ITEM_WEAPON_AXE2H or mhSubclass==LE_ITEM_WEAPON_MACE2H or mhSubclass==LE_ITEM_WEAPON_POLEARM or mhSubclass==LE_ITEM_WEAPON_SWORD2H or mhSubclass==LE_ITEM_WEAPON_STAFF or mhSubclass==LE_ITEM_WEAPON_FISHINGPOLE) then
return
end
end
I have the following auto-queue set up on my offhand slot:
- Ancient Cornerstone Grimoire (priority)
- Tome of Knowledge
Without the above code, if I equip Manual Crowd Pummeler (2H mace), the Ancient Cornerstone Grimoire immediately gets re-equipped by the auto queue, leaving my main hand empty.
With the above code added, if I equip Manual Crowd Pummeler (or any other 2H like Warden Staff, fishing pole, etc.), it stays equipped. If I then equip Blessed Qiraji Warhammer (1H mace), the offhand auto-queue engages again and equips Ancient Cornerstone Grimoire.
Created a pull request for the above: #131
Hi
Thanks for creating the pull request. I will review it as soon as I have time.