diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_16to1_15_2/rewriter/BlockItemPacketRewriter1_16.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_16to1_15_2/rewriter/BlockItemPacketRewriter1_16.java index 1af4e165..a5976495 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_16to1_15_2/rewriter/BlockItemPacketRewriter1_16.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_16to1_15_2/rewriter/BlockItemPacketRewriter1_16.java @@ -148,9 +148,9 @@ protected void registerPackets() { do { slot = wrapper.read(Types.BYTE); Item item = handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_13_2)); - int rawSlot = slot & 127; + int rawSlot = slot & 0x7F; equipmentData.add(new EquipmentData(rawSlot, item)); - } while ((slot & -128) != 0); + } while ((slot & 0xFFFFFF80) != 0); // Send first data in the current packet EquipmentData firstData = equipmentData.get(0); diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_2to1_20/rewriter/BlockItemPacketRewriter1_20_2.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_2to1_20/rewriter/BlockItemPacketRewriter1_20_2.java index 7d30e05e..392cb6cb 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_2to1_20/rewriter/BlockItemPacketRewriter1_20_2.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_2to1_20/rewriter/BlockItemPacketRewriter1_20_2.java @@ -192,7 +192,7 @@ public void register() { do { slot = wrapper.passthrough(Types.BYTE); wrapper.write(Types.ITEM1_13_2, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_20_2))); - } while ((slot & -128) != 0); + } while ((slot & 0xFFFFFF80) != 0); }); } }); diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java index 69127488..ac9c8b7e 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java @@ -77,11 +77,11 @@ public void registerPackets() { do { slot = wrapper.read(Types.BYTE); final Item item = protocol.getItemRewriter().handleItemToClient(wrapper.user(), wrapper.read(Types1_20_5.ITEM)); - final int rawSlot = slot & 127; + final int rawSlot = slot & 0x7F; if (rawSlot == 6) { - final boolean lastSlot = (slot & -128) == 0; - slot = (byte) (lastSlot ? 4 : 4 | -128); // Map body slot index to chest slot index for horses, also wolves + final boolean lastSlot = (slot & 0xFFFFFF80) == 0; + slot = (byte) (lastSlot ? 4 : 4 | 0xFFFFFF80); // Map body slot index to chest slot index for horses, also wolves if (type != null && type.isOrHasParent(EntityTypes1_20_5.LLAMA)) { // Cancel equipment and set correct entity data instead @@ -92,7 +92,7 @@ public void registerPackets() { wrapper.write(Types.BYTE, slot); wrapper.write(Types.ITEM1_20_2, item); - } while ((slot & -128) != 0); + } while ((slot & 0xFFFFFF80) != 0); }); protocol.registerClientbound(ClientboundPackets1_20_5.HORSE_SCREEN_OPEN, wrapper -> {