From 3d3e09977cfc1e2826ce31689d8ff06a25c62654 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Fri, 20 May 2022 14:16:31 +0200 Subject: [PATCH] Fix big fat dumb --- .../Protocol1_19To1_18_2.java | 2 -- .../packets/InventoryPackets.java | 11 +++++-- .../packets/WorldPackets.java | 13 +------- .../storage/SequenceStorage.java | 33 ------------------- 4 files changed, 10 insertions(+), 49 deletions(-) delete mode 100644 common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/storage/SequenceStorage.java diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/Protocol1_19To1_18_2.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/Protocol1_19To1_18_2.java index 4911ce38d..6c71c23ad 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/Protocol1_19To1_18_2.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/Protocol1_19To1_18_2.java @@ -40,7 +40,6 @@ import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.packets.Inventor import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.packets.WorldPackets; import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.storage.DimensionRegistryStorage; import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.storage.NonceStorage; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.storage.SequenceStorage; import com.viaversion.viaversion.rewriter.CommandRewriter; import com.viaversion.viaversion.rewriter.SoundRewriter; import com.viaversion.viaversion.rewriter.TagRewriter; @@ -286,7 +285,6 @@ public final class Protocol1_19To1_18_2 extends AbstractProtocol { @@ -98,8 +99,14 @@ public final class InventoryPackets extends ItemRewriter { private PacketHandler sequenceHandler() { return wrapper -> { + // Manually send and follow up with an acknowledgement final int sequence = wrapper.read(Type.VAR_INT); - wrapper.user().get(SequenceStorage.class).setSequence(sequence); + wrapper.sendToServer(Protocol1_19To1_18_2.class); + wrapper.cancel(); + + final PacketWrapper ackPacket = wrapper.create(ClientboundPackets1_19.BLOCK_CHANGED_ACK); + ackPacket.write(Type.VAR_INT, sequence); + ackPacket.scheduleSend(Protocol1_19To1_18_2.class); }; } } diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/WorldPackets.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/WorldPackets.java index 1a47eb09b..d2907c215 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/WorldPackets.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/WorldPackets.java @@ -27,10 +27,8 @@ import com.viaversion.viaversion.api.protocol.remapper.PacketRemapper; import com.viaversion.viaversion.api.type.Type; import com.viaversion.viaversion.protocols.protocol1_18to1_17_1.ClientboundPackets1_18; import com.viaversion.viaversion.protocols.protocol1_18to1_17_1.types.Chunk1_18Type; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ClientboundPackets1_19; import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.Protocol1_19To1_18_2; import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.ServerboundPackets1_19; -import com.viaversion.viaversion.protocols.protocol1_19to1_18_2.storage.SequenceStorage; import com.viaversion.viaversion.rewriter.BlockRewriter; import com.viaversion.viaversion.util.MathUtil; @@ -43,16 +41,7 @@ public final class WorldPackets { blockRewriter.registerVarLongMultiBlockChange(ClientboundPackets1_18.MULTI_BLOCK_CHANGE); blockRewriter.registerEffect(ClientboundPackets1_18.EFFECT, 1010, 2001); - protocol.registerClientbound(ClientboundPackets1_18.ACKNOWLEDGE_PLAYER_DIGGING, ClientboundPackets1_19.BLOCK_CHANGED_ACK, new PacketRemapper() { - @Override - public void registerMap() { - read(Type.POSITION1_14); - read(Type.VAR_INT); - read(Type.VAR_INT); - read(Type.BOOLEAN); - handler(wrapper -> wrapper.write(Type.VAR_INT, wrapper.user().get(SequenceStorage.class).sequence())); - } - }); + protocol.cancelClientbound(ClientboundPackets1_18.ACKNOWLEDGE_PLAYER_DIGGING); protocol.registerClientbound(ClientboundPackets1_18.CHUNK_DATA, new PacketRemapper() { @Override diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/storage/SequenceStorage.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/storage/SequenceStorage.java deleted file mode 100644 index d015075f2..000000000 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/storage/SequenceStorage.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * This file is part of ViaVersion - https://github.com/ViaVersion/ViaVersion - * Copyright (C) 2016-2022 ViaVersion and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package com.viaversion.viaversion.protocols.protocol1_19to1_18_2.storage; - -import com.viaversion.viaversion.api.connection.StorableObject; - -public final class SequenceStorage implements StorableObject { - - private int sequence; - - public void setSequence(final int sequence) { - this.sequence = sequence; - } - - public int sequence() { - return sequence; - } -}