From 0c8af898aea1b74922cc9b8277dc1341291b47d2 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 11 Nov 2026 17:55:52 +0100 Subject: [PATCH] Choose cursor aim with /aero controls instead of a keybind /aero controls keyboard|cursor_aim is open to every player, stored per player and synced to the client, which switches on automatically when seated. Co-Authored-By: Claude Sonnet 5.5 Claude-Session: https://claude.ai/code/session_01YVREx3uo7nz1FEhzveWTUh --- .../improvedAerodynamics/ConfigCommands.java | 40 ++++++++++++++--- .../ImprovedAerodynamics.java | 1 + .../client/aim/AimKeys.java | 5 +-- .../client/aim/CursorAimClient.java | 17 ++++--- .../flight/ControlMode.java | 45 +++++++++++++++++++ .../flight/CursorAimServer.java | 2 +- .../network/ControlModePacket.java | 32 +++++++++++++ .../improvedAerodynamics/network/Network.java | 5 +++ .../improved_aerodynamics/lang/de_de.json | 1 - .../improved_aerodynamics/lang/en_us.json | 1 - 10 files changed, 131 insertions(+), 18 deletions(-) create mode 100644 src/main/java/dev/lumareth/improvedAerodynamics/flight/ControlMode.java create mode 100644 src/main/java/dev/lumareth/improvedAerodynamics/network/ControlModePacket.java diff --git a/src/main/java/dev/lumareth/improvedAerodynamics/ConfigCommands.java b/src/main/java/dev/lumareth/improvedAerodynamics/ConfigCommands.java index 01ada46..11758d8 100644 --- a/src/main/java/dev/lumareth/improvedAerodynamics/ConfigCommands.java +++ b/src/main/java/dev/lumareth/improvedAerodynamics/ConfigCommands.java @@ -5,6 +5,7 @@ import com.mojang.brigadier.arguments.BoolArgumentType; import com.mojang.brigadier.arguments.DoubleArgumentType; import com.mojang.brigadier.builder.LiteralArgumentBuilder; import com.mojang.brigadier.tree.LiteralCommandNode; +import dev.lumareth.improvedAerodynamics.flight.ControlMode; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.Commands; import net.minecraft.network.chat.Component; @@ -18,7 +19,8 @@ import java.util.List; /** * /improvedaerodynamics (or /aero) to read and change the most important server config values in game. * {@code /aero} lists them, {@code /aero