From 964c935ff28aa321aab9f4047d01b0d463292489 Mon Sep 17 00:00:00 2001 From: adryd Date: Thu, 20 Jun 2024 18:13:31 -0400 Subject: [PATCH] 1.21??? --- gradle.properties | 8 +++---- gradle/wrapper/gradle-wrapper.properties | 4 ++-- .../MixinServerHandshakeNetworkHandler.java | 23 +++++++++++-------- 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/gradle.properties b/gradle.properties index 27c4c1f..86a432c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,11 +3,11 @@ org.gradle.jvmargs=-Xmx1G org.gradle.parallel=true # Fabric Properties -minecraft_version=1.20.3-pre4 -yarn_mappings=1.20.3-pre4+build.2 -loader_version=0.14.25 +minecraft_version=1.21 +yarn_mappings=1.21+build.2 +loader_version=0.15.11 # Mod Properties -mod_version = 1.0.12 +mod_version = 1.0.13 maven_group = com.adryd archives_base_name = sneaky diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 37aef8d..c552ff3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ +#Thu Jun 20 17:58:23 EDT 2024 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip -networkTimeout=10000 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/main/java/com/adryd/sneaky/mixin/MixinServerHandshakeNetworkHandler.java b/src/main/java/com/adryd/sneaky/mixin/MixinServerHandshakeNetworkHandler.java index d650ed7..6bce970 100644 --- a/src/main/java/com/adryd/sneaky/mixin/MixinServerHandshakeNetworkHandler.java +++ b/src/main/java/com/adryd/sneaky/mixin/MixinServerHandshakeNetworkHandler.java @@ -3,16 +3,14 @@ import com.adryd.sneaky.Config; import com.adryd.sneaky.IPList; import net.minecraft.network.ClientConnection; -import net.minecraft.network.packet.c2s.handshake.HandshakeC2SPacket; +import net.minecraft.server.MinecraftServer; import net.minecraft.server.network.ServerHandshakeNetworkHandler; import net.minecraft.text.Text; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.LocalCapture; +import org.spongepowered.asm.mixin.injection.Redirect; @Mixin(ServerHandshakeNetworkHandler.class) public class MixinServerHandshakeNetworkHandler { @@ -21,15 +19,22 @@ public class MixinServerHandshakeNetworkHandler { @Final private ClientConnection connection; + @Shadow + @Final + private MinecraftServer server; + @Shadow @Final private static Text IGNORING_STATUS_REQUEST_MESSAGE; - @Inject(method = "onHandshake", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/ClientConnection;setS2CPacketHandler(Lnet/minecraft/network/packet/c2s/handshake/ConnectionIntent;)V", ordinal = 1), locals = LocalCapture.CAPTURE_FAILHARD, cancellable = true) - private void acceptsQuery(HandshakeC2SPacket packet, CallbackInfo ci) { - if (Config.INSTANCE.getDisableAllPingsUntilLogin() && !IPList.INSTANCE.canPing(this.connection.getAddress())) { - this.connection.disconnect(IGNORING_STATUS_REQUEST_MESSAGE); - ci.cancel(); + @Redirect(method = "onHandshake", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/MinecraftServer;acceptsStatusQuery()Z")) + private boolean acceptsQuery(MinecraftServer instance) { + if (this.server.acceptsStatusQuery()) { + if (Config.INSTANCE.getDisableAllPingsUntilLogin() && !IPList.INSTANCE.canPing(this.connection.getAddress())) { + return false; + } + return true; } + return false; } }