diff options
author | metamuffin <metamuffin@disroot.org> | 2025-09-24 00:11:10 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-09-24 00:11:10 +0200 |
commit | f50f7dee84c93380bb9c6ca1b0dc209181293092 (patch) | |
tree | fcd4955ae70b3c30d5c61129c2072d77b37062f2 | |
parent | c0d7f16a8ee2a5a30c0472784ffe7265503a6dd0 (diff) | |
download | hurrycurry-f50f7dee84c93380bb9c6ca1b0dc209181293092.tar hurrycurry-f50f7dee84c93380bb9c6ca1b0dc209181293092.tar.bz2 hurrycurry-f50f7dee84c93380bb9c6ca1b0dc209181293092.tar.zst |
Add fps mouse sens setting
-rw-r--r-- | client/gui/menus/settings/input/input_manager.gd | 3 | ||||
-rw-r--r-- | client/player/controllable_player.gd | 5 | ||||
-rw-r--r-- | client/system/settings.gd | 4 | ||||
-rw-r--r-- | locale/en.ini | 1 |
4 files changed, 9 insertions, 4 deletions
diff --git a/client/gui/menus/settings/input/input_manager.gd b/client/gui/menus/settings/input/input_manager.gd index 82ee5a6a..da148e8d 100644 --- a/client/gui/menus/settings/input/input_manager.gd +++ b/client/gui/menus/settings/input/input_manager.gd @@ -43,9 +43,10 @@ func get_events(action_name: String) -> Array: return [] return input_map[action_name] -func settings() -> Array: +func settings(extra) -> Array: # Array[GameSetting] var entries := [] for k in input_map.keys(): entries.append(InputSetting.new(k)) + entries.append_array(extra) return entries func change_input_map_action(action_name: String, events: Array, save: bool = true): diff --git a/client/player/controllable_player.gd b/client/player/controllable_player.gd index ebc91488..8f5ce3c0 100644 --- a/client/player/controllable_player.gd +++ b/client/player/controllable_player.gd @@ -76,8 +76,9 @@ func _process(delta): func _input(event: InputEvent): if Input.mouse_mode != Input.MOUSE_MODE_CAPTURED: return if event is InputEventMouseMotion: - fps_look.x += event.relative.y * -0.001 - fps_look.y += event.relative.x * 0.001 + var sens = Settings.read("input.fps_mouse_sensitivity") + fps_look.x += event.relative.y * -sens + fps_look.y += event.relative.x * sens fps_look.x = max(-PI * 0.45, min(PI * 0.45, fps_look.x)) if event is InputEventMouseButton: var action = "" diff --git a/client/system/settings.gd b/client/system/settings.gd index cd990216..97546c68 100644 --- a/client/system/settings.gd +++ b/client/system/settings.gd @@ -62,7 +62,9 @@ static func get_root(): DropdownSetting.new("scale_mode", "resize", ["resize", "disabled"]), RangeSetting.new("scale_factor", 1. if not Global.on_mobile() else 1.5, 0.5, 1.5, 3), ]), - SettingsCategory.new("input", InputManager.settings()), + SettingsCategory.new("input", InputManager.settings([ + RangeSetting.new("fps_mouse_sensitivity", 0.001, 0.0001, 0.003) + ])), SettingsCategory.new("server", [ PathSetting.new("binary_path", "", FileDialog.FileMode.FILE_MODE_OPEN_FILE), PathSetting.new("editor_binary_path", "", FileDialog.FileMode.FILE_MODE_OPEN_DIR), diff --git a/locale/en.ini b/locale/en.ini index ed4121c6..04734914 100644 --- a/locale/en.ini +++ b/locale/en.ini @@ -154,6 +154,7 @@ c.settings.input.toggle_first_person=Toggle first person camera c.settings.input.backwards=Move Backwards c.settings.input.boost=Boost movement c.settings.input.chat=Toggle chat +c.settings.input.fps_mouse_sensitivity=Mouse Sensitivity (FPS) c.settings.input.forwards=Move Forwards c.settings.input.fullscreen=Toggle fullscreen c.settings.input.interact_left=Interact (Left hand) |