From 3efbd41f56e77eda583f59575dcb6af18684c29b Mon Sep 17 00:00:00 2001 From: Minimata Date: Mon, 9 Feb 2026 11:20:57 +0100 Subject: [PATCH] aim assist in inputs --- .../options_menu/input/input_extras_menu.tscn | 15 +++++++++++++++ .../player_controller/scripts/PlayerController.cs | 4 +++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/menus/scenes/menus/options_menu/input/input_extras_menu.tscn b/menus/scenes/menus/options_menu/input/input_extras_menu.tscn index 027d702e..25cdd56d 100644 --- a/menus/scenes/menus/options_menu/input/input_extras_menu.tscn +++ b/menus/scenes/menus/options_menu/input/input_extras_menu.tscn @@ -93,7 +93,22 @@ text = "FOV change with speed :" step = 0.1 tick_count = 10 +[node name="Aim assist" parent="VBoxContainer/MarginContainer/VBoxContainer" unique_id=1782285745 instance=ExtResource("2_iyvrj")] +layout_mode = 2 +option_name = "Aim assist" +option_section = 1 +key = "AimAssist" +section = "InputSettings" + +[node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/Aim assist" index="0" unique_id=1789907427] +text = "Aim assist :" + +[node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/Aim assist" index="1" unique_id=494926010] +max_value = 2.0 +step = 0.1 + [editable path="VBoxContainer/MarginContainer/VBoxContainer/LookSensitivityControl"] [editable path="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl"] [editable path="VBoxContainer/MarginContainer/VBoxContainer/HeadBobbingControl"] [editable path="VBoxContainer/MarginContainer/VBoxContainer/FOVChangeControl"] +[editable path="VBoxContainer/MarginContainer/VBoxContainer/Aim assist"] diff --git a/scenes/player_controller/scripts/PlayerController.cs b/scenes/player_controller/scripts/PlayerController.cs index b5100d56..adef4eb4 100644 --- a/scenes/player_controller/scripts/PlayerController.cs +++ b/scenes/player_controller/scripts/PlayerController.cs @@ -312,6 +312,7 @@ public partial class PlayerController : CharacterBody3D, private float _mouseSensitivityMultiplier = 1.0f; private float _headBobbingMultiplier = 1.0f; private float _fovChangeMultiplier = 1.0f; + private float _aimAssistMultiplier = 1.0f; // Timers private Timer _timeScaleAimInAirTimer; @@ -668,6 +669,7 @@ public partial class PlayerController : CharacterBody3D, _mouseSensitivityMultiplier = (float) config.GetValue("InputSettings", "MouseSensitivity", 1.0f); _headBobbingMultiplier = (float) config.GetValue("InputSettings", "HeadBobbingWhileWalking", 1.0f); _fovChangeMultiplier = (float) config.GetValue("InputSettings", "FovChangeWithSpeed", 1.0f); + _aimAssistMultiplier = (float) config.GetValue("InputSettings", "AimAssist", 1.0f); } public void OnTutorialDone(Node3D _) { @@ -972,7 +974,7 @@ public partial class PlayerController : CharacterBody3D, // Reduce aim assist when closing in on target because it can mess with the camera when dashing through var distanceFactor = Mathf.Clamp(distanceToTarget / AimAssistReductionStartDistance, 0f, 1f); var aimAssistReductionFactor = Mathf.Lerp(AimAssistReductionWhenCloseToTarget, 1f, distanceFactor); - return aimAssist * aimAssistReductionFactor; + return aimAssist * aimAssistReductionFactor * _aimAssistMultiplier; } private void LookAround(double delta)