From a33ab5b2829073ea2bb988ae8c97f03749d48a1c Mon Sep 17 00:00:00 2001 From: cattyn Date: Wed, 15 Oct 2025 19:44:02 +0300 Subject: [PATCH] fix: packet sneak and noslow airstrict --- .../mixin/ClientPlayerEntityMixin.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerEntityMixin.java b/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerEntityMixin.java index cce4b62324..86b68a509a 100644 --- a/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerEntityMixin.java +++ b/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerEntityMixin.java @@ -20,6 +20,7 @@ import net.minecraft.client.network.AbstractClientPlayerEntity; import net.minecraft.client.network.ClientPlayerEntity; import net.minecraft.client.world.ClientWorld; +import net.minecraft.util.PlayerInput; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; @@ -80,12 +81,21 @@ private float onHunger(float constant) { return constant; } - /* - @ModifyExpressionValue(method = "sendSneakingPacket", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/network/ClientPlayerEntity;isSneaking()Z")) - private boolean isSneaking(boolean sneaking) { - return Modules.get().get(Sneak.class).doPacket() || Modules.get().get(NoSlow.class).airStrict() || sneaking; + @ModifyExpressionValue(method = "tick", at = @At(value = "FIELD", target = "Lnet/minecraft/client/input/Input;playerInput:Lnet/minecraft/util/PlayerInput;")) + private PlayerInput isSneaking(PlayerInput original) { + if (Modules.get().get(Sneak.class).doPacket() || Modules.get().get(NoSlow.class).airStrict()) { + return new PlayerInput( + original.forward(), + original.backward(), + original.left(), + original.right(), + original.jump(), + true, + original.sprint() + ); + } + return original; } - */ @Inject(method = "tickMovement", at = @At("HEAD")) private void preTickMovement(CallbackInfo ci) {