diff options
author | metamuffin <metamuffin@disroot.org> | 2025-09-15 16:44:46 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-09-15 16:44:46 +0200 |
commit | 2ab827a9975b59490a9f46a7d22b9fd387879c18 (patch) | |
tree | fb2375442b7d179250d6b8a14ea16b00123fbe12 /client/gui/menus/settings/input/input_value_node.gd | |
parent | 676d4dcb6c439677b91b1b5cbc0bf08f98e2dd9d (diff) | |
download | hurrycurry-2ab827a9975b59490a9f46a7d22b9fd387879c18.tar hurrycurry-2ab827a9975b59490a9f46a7d22b9fd387879c18.tar.bz2 hurrycurry-2ab827a9975b59490a9f46a7d22b9fd387879c18.tar.zst |
implement JSON InputEvent load+save
Diffstat (limited to 'client/gui/menus/settings/input/input_value_node.gd')
-rw-r--r-- | client/gui/menus/settings/input/input_value_node.gd | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/client/gui/menus/settings/input/input_value_node.gd b/client/gui/menus/settings/input/input_value_node.gd index 7c718e25..29b53850 100644 --- a/client/gui/menus/settings/input/input_value_node.gd +++ b/client/gui/menus/settings/input/input_value_node.gd @@ -16,7 +16,7 @@ extends VBoxContainer class_name InputValueNode -var value: Array[InputEvent] = [] +var value = [] var listening := false signal changed() @@ -53,22 +53,13 @@ func _input(e: InputEvent): if e is InputEventKey or e is InputEventMouseButton or e is InputEventJoypadButton or e is InputEventJoypadMotion: # Check if key was already added for e2 in value: - if events_equal(e, e2): return + if InputSetting.events_equal(e, e2): return value.append(e) _on_add_pressed() update() changed.emit() -func events_equal(e1: InputEvent, e2: InputEvent) -> bool: - if e1 is InputEventKey and e2 is InputEventKey: - return e1.physical_keycode == e2.physical_keycode - if (e1 is InputEventMouseButton and e2 is InputEventMouseButton) or (e1 is InputEventJoypadButton and e2 is InputEventJoypadButton): - return e1.button_index == e2.button_index - if e1 is InputEventJoypadMotion and e2 is InputEventJoypadMotion: - return e1.axis == e2.axis - return false - func _on_add_pressed() -> void: listening = not listening add_button.text = tr("c.settings.input.press_any_key") if listening else add_text |