MC Version: 1.18.2
Forge Version: 40.1.68
@Override
public InteractionResultHolder<ItemStack> use(Level level, Player player, InteractionHand hand) {
var stack = player.getMainHandItem();
return InteractionResultHolder.success(stack);
}
Works fine, item animation has been played, but if I using item from the off hand it disappears (not desync).
Also if I make that item actually to something on use, let's say
level.setRainLevel(1.0f);
It still consumes item.