When attempting to swap equipped rings into opposite ring slots using EquipItem() the slot controls do not update properly.
Place different rings in each ring slot (so we can see the effect)
EQUIP_SLOT_RING1 -- Ring A
EQUIP_SLOT_RING2 -- Ring B
Run:
Lua Code:
EquipItem(BAG_WORN, EQUIP_SLOT_RING1, EQUIP_SLOT_RING2)
When viewing the character doll it will still show the rings in the same position,
EQUIP_SLOT_RING1 -- Ring A
EQUIP_SLOT_RING2 -- Ring B
even though they are not.
If you unequip, what
looks like Ring A, in ring slot 1 it will unequip that slot but Ring B ends up in your inventory. Which shows that the items did swap slots, the controls just did not update.
Worse if you only have 1 ring equipped and move it:
EQUIP_SLOT_RING1 -- Ring A
Run:
Lua Code:
EquipItem(BAG_WORN, EQUIP_SLOT_RING1, EQUIP_SLOT_RING2)
Once again the controls do not update so it still shows Ring A in ring slot 1. Ring slot 2 is empty so you can not double click or right click on the ring to unequip it. Although you can double click on Ring slot 1 or right click to get the context menu, since there really isn't a ring there anymore the unequip does not work that way either. The only way to unequip it is to equip TWO rings from your inventory to force it to update both ring slots and it will unequip the ring for you.