diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java index 350c14e74..e0c5301d6 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/Ah6Entity.java @@ -690,17 +690,17 @@ public class Ah6Entity extends ContainerMobileVehicleEntity implements GeoEntity @Override public double getMouseSensitivity() { - return 0.15; + return 0.25; } @Override public double getMouseSpeedX() { - return 0.35; + return 0.4; } @Override public double getMouseSpeedY() { - return 0.2; + return 0.25; } @OnlyIn(Dist.CLIENT) diff --git a/src/main/java/com/atsuishio/superbwarfare/event/ClientMouseHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/ClientMouseHandler.java index 2fb581dc4..795716dba 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/ClientMouseHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/ClientMouseHandler.java @@ -60,15 +60,24 @@ public class ClientMouseHandler { LocalPlayer player = Minecraft.getInstance().player; if (player == null) return; + if (notInGame()) { + PacketDistributor.sendToServer(new MouseMoveMessage(0, 0)); + return; + } + posO = posN; posN = MouseMovementHandler.getMousePos(); ItemStack stack = player.getMainHandItem(); var tag = NBTTool.getTag(stack); - if (!notInGame() && stack.is(ModItems.MONITOR.get()) && tag.getBoolean("Using") && tag.getBoolean("Linked")) { + if (stack.is(ModItems.MONITOR.get()) && tag.getBoolean("Using") && tag.getBoolean("Linked")) { DroneEntity drone = EntityFindUtil.findDrone(player.level(), tag.getString("LinkedDrone")); if (drone != null) { + if (notInGame()) { + PacketDistributor.sendToServer(new MouseMoveMessage(0, 0)); + return; + } speedX = drone.getMouseSensitivity() * (posN.x - posO.x); speedY = drone.getMouseSensitivity() * (posN.y - posO.y); @@ -80,7 +89,12 @@ public class ClientMouseHandler { return; } - if (!notInGame() && player.getVehicle() instanceof VehicleEntity vehicle && player == vehicle.getFirstPassenger()) { + if (player.getVehicle() instanceof VehicleEntity vehicle && player == vehicle.getFirstPassenger()) { + + if (notInGame()) { + PacketDistributor.sendToServer(new MouseMoveMessage(0, 0)); + return; + } int y = 1; @@ -131,8 +145,8 @@ public class ClientMouseHandler { freeCameraYaw -= 0.4f * times * lerpSpeedX; freeCameraPitch += 0.3f * times * lerpSpeedY; if (!isFreeCam(player)) { - freeCameraYaw = Mth.lerp(0.4 * times, freeCameraYaw, 0); - freeCameraPitch = Mth.lerp(0.4 * times, freeCameraPitch, 0); + freeCameraYaw = Mth.lerp(0.6 * times, freeCameraYaw, 0); + freeCameraPitch = Mth.lerp(0.6 * times, freeCameraPitch, 0); } while (freeCameraYaw > 180F) {