From 3fbeb3e902df5f3453c4aff9aded6514fffeb6e3 Mon Sep 17 00:00:00 2001 From: KennyTV Date: Wed, 1 Jul 2020 20:07:20 +0200 Subject: [PATCH] Actually fix hardcore flag --- .../protocol1_16_2to1_16_1/packets/EntityPackets.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_16_2to1_16_1/packets/EntityPackets.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_16_2to1_16_1/packets/EntityPackets.java index b2d4d70a5..013f36b75 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_16_2to1_16_1/packets/EntityPackets.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_16_2to1_16_1/packets/EntityPackets.java @@ -27,8 +27,11 @@ public class EntityPackets { public void registerMap() { map(Type.INT); // Entity ID handler(wrapper -> { - short gamemode = wrapper.passthrough(Type.UNSIGNED_BYTE); - wrapper.write(Type.BOOLEAN, (gamemode & 0x08) != 0); // Hardcore + short gamemode = wrapper.read(Type.UNSIGNED_BYTE); + boolean hardcore = (gamemode & 0x08) != 0; + gamemode &= ~0x08; + wrapper.write(Type.UNSIGNED_BYTE, gamemode); + wrapper.write(Type.BOOLEAN, hardcore); // Hardcore }); map(Type.UNSIGNED_BYTE); // Gamemode map(Type.BYTE); // Previous Gamemode