diff --git a/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/codec/v465/serializer/UpdateSubChunkBlocksSerializer_v465.java b/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/codec/v465/serializer/UpdateSubChunkBlocksSerializer_v465.java index fbaacab70..5994faa5a 100644 --- a/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/codec/v465/serializer/UpdateSubChunkBlocksSerializer_v465.java +++ b/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/codec/v465/serializer/UpdateSubChunkBlocksSerializer_v465.java @@ -17,18 +17,14 @@ public class UpdateSubChunkBlocksSerializer_v465 implements BedrockPacketSeriali @Override public void serialize(ByteBuf buffer, BedrockCodecHelper helper, UpdateSubChunkBlocksPacket packet) { - VarInts.writeInt(buffer, packet.getChunkX()); - VarInts.writeUnsignedInt(buffer, packet.getChunkY()); - VarInts.writeInt(buffer, packet.getChunkZ()); + helper.writeBlockPosition(buffer, packet.getPosition()); helper.writeArray(buffer, packet.getStandardBlocks(), this::writeBlockChangeEntry); helper.writeArray(buffer, packet.getExtraBlocks(), this::writeBlockChangeEntry); } @Override public void deserialize(ByteBuf buffer, BedrockCodecHelper helper, UpdateSubChunkBlocksPacket packet) { - packet.setChunkX(VarInts.readInt(buffer)); - packet.setChunkY(VarInts.readUnsignedInt(buffer)); - packet.setChunkZ(VarInts.readInt(buffer)); + packet.setPosition(helper.readBlockPosition(buffer)); helper.readArray(buffer, packet.getStandardBlocks(), this::readBlockChangeEntry); helper.readArray(buffer, packet.getExtraBlocks(), this::readBlockChangeEntry); } diff --git a/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/packet/UpdateSubChunkBlocksPacket.java b/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/packet/UpdateSubChunkBlocksPacket.java index a20584476..7568e7df1 100644 --- a/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/packet/UpdateSubChunkBlocksPacket.java +++ b/bedrock-codec/src/main/java/org/cloudburstmc/protocol/bedrock/packet/UpdateSubChunkBlocksPacket.java @@ -4,6 +4,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; +import org.cloudburstmc.math.vector.Vector3i; import org.cloudburstmc.protocol.bedrock.data.BlockChangeEntry; import org.cloudburstmc.protocol.common.PacketSignal; @@ -13,9 +14,7 @@ @EqualsAndHashCode(doNotUseGetters = true) @ToString(doNotUseGetters = true) public class UpdateSubChunkBlocksPacket implements BedrockPacket { - private int chunkX; - private int chunkY; - private int chunkZ; + private Vector3i position; private final List standardBlocks = new ObjectArrayList<>(); private final List extraBlocks = new ObjectArrayList<>();