Unique weapon swap macro (classic)

A guildy is looking for a particular kind of macro and doesn’t want to use an addon for it.

He has 2 weaps of same name. Wants a macro that’ll equip both instead of the macro trying to slot to main hand both of them. He cannot map it to a bag slot as his bags are nearly always full and cannot dedicate 2 slots by ID.

The ask is for a macro that will equip the two weaps of same name. One to main hand, one to off hand, without the weapons having to be in specific bag slots.

Not possible in combat. Gello wrote a script that’s floating around here somewhere that can do it outside of combat.

Just use your equipment manager tab…

Create two , one with the one set and one with the other.
Use a icon and drag it to tool bar.

No macro needed unless they don’t have the tab in Classic…

Unfortunately, the equipment manager doesn’t exist in Classic. (As an aside, they protected item equipping in BC. In the real classic WoW you could equip weapons in combat in half a dozen different ways. They should’ve added equipment manager to help make up for the loss of equip methods.)

To the original question, if you can enchant the two identical weapons differently, things become trivial.

If you have itemID 1234 with enchantID 20 on one hand and enchantID 82 on the other:

/equipslot 16 item:1234:20
/equipslot 17 item:1234:82

If that’s not an option, nor is bag slots, your choices become limited. You can equip stuff out of comback with PickupInventoryItem. A recent thread on that with examples is here:

Thank you for summoning me, here is the macro you desire:

/stopmacro [combat]
/run local s=16 for i=0,4 do for j=2,20 do if (GetContainerItemLink(i,j) or “”):match(“WEAPON_NAME_HERE”) and s<18 then PickupContainerItem(i,j) PickupInventoryItem(s) s=s+1 end end end

for this macro you want to replace the term WEAPON_NAME_HERE, it should work for any container slot in all of your bags. The only thing is, if you intend to use the macro in combat, you’ll need a more complicated macro. Similar to what I used in the linked thread.

something like this:

/click MultiBarRightButton6
/stopmacro [mod:alt]
/run local s=1 for i=0,4 do for j=2,20 do if (GetContainerItemLink(i,j) or “”):match(“WEAPON_NAME_HERE”) then PickupContainerItem(i,j) PickupContainerItem(0,s) s=s+1 end end end

/stopmacro [nomod:alt]
/equipslot 16 0 1
/equipslot 17 0 2

You’ll have to use up two macro’s & action bars because of the 255 macro character limit. But essentially the macro moves the weapons into the first two bag slots of your Backpack. Then when you hold [alt] it equips them. You can change the bagslots/modifiers/ActionButton# however you like. As far as I can tell, its the best you can do with no inventory management.