From 0744bd064a0cac5be4a3471da603a0dd0d435d54 Mon Sep 17 00:00:00 2001 From: Micle Date: Mon, 6 Jun 2022 13:06:27 +0100 Subject: [PATCH] Updated RequestLastInputTickPacket. - Removed unnecessary default constructor. - When handling the packet the client will first check if input is allowed which should update the last input tick if needs be before sending it to the server. --- .../network/server/RequestLastInputTickPacket.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java b/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java index 6717352..b1cc6c8 100644 --- a/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java +++ b/src/main/java/dev/micle/loginprotection/network/server/RequestLastInputTickPacket.java @@ -1,5 +1,6 @@ package dev.micle.loginprotection.network.server; +import dev.micle.loginprotection.events.OnClientInputEventHandler; import dev.micle.loginprotection.network.NetworkManager; import dev.micle.loginprotection.network.client.LastInputTickPacket; import net.minecraft.network.FriendlyByteBuf; @@ -8,8 +9,6 @@ import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class RequestLastInputTickPacket { - public RequestLastInputTickPacket() {} - public static void encode(final RequestLastInputTickPacket packet, final FriendlyByteBuf buffer) { NetworkManager.writeVersionInfo(buffer, false); } @@ -22,6 +21,9 @@ public class RequestLastInputTickPacket { public static void handle(final RequestLastInputTickPacket packet, final Supplier contextSupplier) { final NetworkEvent.Context context = contextSupplier.get(); context.enqueueWork(() -> { + // Update last input tick (This works around GLFW forgetting about a repeat key after another one is pressed) + OnClientInputEventHandler.checkIfInputIsAllowed(); + // Send last input tick packet back to server NetworkManager.getChannel().sendToServer(new LastInputTickPacket()); });