How the bug works
While using loot
command to replace items on a player's main-hand, it works, but it also clears the offhand via a minecraft:contents
entry.
How to do
Use the command to place a contained shulker box.
/setblock ~ ~3 ~ shulker_box{Items:[{Slot:0b,id:"minecraft:stone",Count:1b}]}
Take an item, (like, an emerald or else,) on your offhand.
Use the other command to trigger the condition (see
shulker_box.json
.)
/loot replace entity @s weapon.mainhand mine ~ ~3 ~ stone{getContents:true}
Duplicate of MC-137700. See this comment: http://bugs.mojang.com/browse/MC-137700#comment-496502
And easy fix is adding a
1
after the slot id like this: