aboutsummaryrefslogtreecommitdiff
path: root/client/gui/menus/settings
diff options
context:
space:
mode:
Diffstat (limited to 'client/gui/menus/settings')
-rw-r--r--client/gui/menus/settings/button_setting.gd2
-rw-r--r--client/gui/menus/settings/dropdown_setting.gd11
-rw-r--r--client/gui/menus/settings/game_setting.gd4
-rw-r--r--client/gui/menus/settings/input/input_manager.gd4
-rw-r--r--client/gui/menus/settings/input/input_setting.gd4
-rw-r--r--client/gui/menus/settings/input/input_value_node.gd2
-rw-r--r--client/gui/menus/settings/input/input_value_node.tscn8
-rw-r--r--client/gui/menus/settings/number_setting.gd4
-rw-r--r--client/gui/menus/settings/path_setting.gd2
-rw-r--r--client/gui/menus/settings/preset_row.gd2
-rw-r--r--client/gui/menus/settings/range_setting.gd4
-rw-r--r--client/gui/menus/settings/settings.gd6
-rw-r--r--client/gui/menus/settings/settings.tscn18
-rw-r--r--client/gui/menus/settings/settings_category.gd2
-rw-r--r--client/gui/menus/settings/settings_root.gd2
-rw-r--r--client/gui/menus/settings/settings_row.gd2
-rw-r--r--client/gui/menus/settings/settings_row.tscn16
-rw-r--r--client/gui/menus/settings/text_setting.gd4
-rw-r--r--client/gui/menus/settings/toggle_setting.gd4
19 files changed, 51 insertions, 50 deletions
diff --git a/client/gui/menus/settings/button_setting.gd b/client/gui/menus/settings/button_setting.gd
index e8a2ab42..6d7f9f2f 100644
--- a/client/gui/menus/settings/button_setting.gd
+++ b/client/gui/menus/settings/button_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/dropdown_setting.gd b/client/gui/menus/settings/dropdown_setting.gd
index bf4c3d48..dce4e4b3 100644
--- a/client/gui/menus/settings/dropdown_setting.gd
+++ b/client/gui/menus/settings/dropdown_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -17,17 +17,20 @@ class_name DropdownSetting
extends GameSetting
var options: Array
+var tooltips: Array
-func _init(new_id: String, new_default, new_options: Array):
+func _init(new_id: String, new_default, new_options: Array, new_tooltips = null):
super(new_id, new_default)
options = new_options
+ tooltips = new_tooltips if new_tooltips else []
func create_row():
var row = super()
row.value_node = OptionButton.new()
row.value_node.clip_text = true
- for i in options: row.value_node.add_item(tr(nskey + "." + i))
- Settings.hook_changed_init(key, "preview",
+ for k in options: row.value_node.add_item(tr(nskey + "." + k))
+ for i in range(tooltips.size()): row.value_node.set_item_tooltip(i, tooltips[i])
+ Settings.hook_changed_init(key, row.value_node,
func(value):
if is_instance_valid(row):
row.value_node.select(options.find(value))
diff --git a/client/gui/menus/settings/game_setting.gd b/client/gui/menus/settings/game_setting.gd
index d0b38b34..e9be3f45 100644
--- a/client/gui/menus/settings/game_setting.gd
+++ b/client/gui/menus/settings/game_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -35,7 +35,7 @@ func create_row():
if hide_reset(): row.hide_reset = true
else:
row.reset.connect(func(): Settings.write(key, default))
- Settings.hook_changed_init(key, "preview_reset", func (_value):
+ Settings.hook_changed_init(key, row, func (_value):
if is_instance_valid(row): row.set_reset_disabled(is_default())
)
return row
diff --git a/client/gui/menus/settings/input/input_manager.gd b/client/gui/menus/settings/input/input_manager.gd
index b0b80a39..6700029a 100644
--- a/client/gui/menus/settings/input/input_manager.gd
+++ b/client/gui/menus/settings/input/input_manager.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -25,7 +25,7 @@ enum EventType {
func action_list() -> Array: # Array[String]
return InputMap.get_actions().filter(func isBuiltIn(k: String): return !k.begins_with("ui_")).map(func (x): return str(x))
-func update_input_map(action: String):
+func update_input_map(_value, action: String):
if not action in action_list(): return
InputMap.action_erase_events(action)
for event in Settings.read("input.%s" % action):
diff --git a/client/gui/menus/settings/input/input_setting.gd b/client/gui/menus/settings/input/input_setting.gd
index 2fb4af3d..e689cbf2 100644
--- a/client/gui/menus/settings/input/input_setting.gd
+++ b/client/gui/menus/settings/input/input_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -27,7 +27,7 @@ func create_row():
row.value_node = INPUT_VALUE_NODE_SCENE.instantiate()
# Manual initial update without update() since that needs to wait for _ready
row.value_node.value = Settings.read(key)
- Settings.hook_changed(key, "preview",
+ Settings.hook_changed(key, row.value_node,
func(value):
if is_instance_valid(row):
row.value_node.value = value
diff --git a/client/gui/menus/settings/input/input_value_node.gd b/client/gui/menus/settings/input/input_value_node.gd
index fe5768cf..6034d7cc 100644
--- a/client/gui/menus/settings/input/input_value_node.gd
+++ b/client/gui/menus/settings/input/input_value_node.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/input/input_value_node.tscn b/client/gui/menus/settings/input/input_value_node.tscn
index 1b2e89c4..11997d6d 100644
--- a/client/gui/menus/settings/input/input_value_node.tscn
+++ b/client/gui/menus/settings/input/input_value_node.tscn
@@ -1,19 +1,19 @@
-[gd_scene load_steps=3 format=3 uid="uid://c6r0nv5daq7wc"]
+[gd_scene format=3 uid="uid://c6r0nv5daq7wc"]
[ext_resource type="Script" uid="uid://ckb78voiq05e3" path="res://gui/menus/settings/input/input_value_node.gd" id="1_snxax"]
[ext_resource type="Texture2D" uid="uid://cnfjbowd2i02r" path="res://gui/resources/icons/plus.svg" id="2_3vlvc"]
-[node name="InputValueNode" type="VBoxContainer"]
+[node name="InputValueNode" type="VBoxContainer" unique_id=533450939]
offset_right = 128.0
offset_bottom = 31.0
theme_override_constants/separation = 0
script = ExtResource("1_snxax")
-[node name="ActionsContainer" type="VBoxContainer" parent="."]
+[node name="ActionsContainer" type="VBoxContainer" parent="." unique_id=1714871417]
layout_mode = 2
theme_override_constants/separation = 0
-[node name="Add" type="Button" parent="."]
+[node name="Add" type="Button" parent="." unique_id=1977567965]
custom_minimum_size = Vector2(128, 0)
layout_mode = 2
size_flags_vertical = 3
diff --git a/client/gui/menus/settings/number_setting.gd b/client/gui/menus/settings/number_setting.gd
index 48dd0a82..85f3f363 100644
--- a/client/gui/menus/settings/number_setting.gd
+++ b/client/gui/menus/settings/number_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -32,7 +32,7 @@ func create_row():
input.max_value = max_value
input.value_changed.connect(func(value): Settings.write(key, value as int))
- Settings.hook_changed_init(key, "preview",
+ Settings.hook_changed_init(key, input,
func(v):
if is_instance_valid(input):
input.value = v
diff --git a/client/gui/menus/settings/path_setting.gd b/client/gui/menus/settings/path_setting.gd
index 37492ed7..81d79777 100644
--- a/client/gui/menus/settings/path_setting.gd
+++ b/client/gui/menus/settings/path_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/preset_row.gd b/client/gui/menus/settings/preset_row.gd
index ad878d00..5b83a9a2 100644
--- a/client/gui/menus/settings/preset_row.gd
+++ b/client/gui/menus/settings/preset_row.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/range_setting.gd b/client/gui/menus/settings/range_setting.gd
index 2d7e88b4..c400aa2c 100644
--- a/client/gui/menus/settings/range_setting.gd
+++ b/client/gui/menus/settings/range_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -35,7 +35,7 @@ func create_row():
row.value_node.max_value = max_value
row.value_node.tick_count = abs(max_value - min_value) if tick_count == null else tick_count
row.value_node.step = 0 if smooth else (1 if tick_count == null else abs(max_value - min_value) / (tick_count - 1))
- Settings.hook_changed_init(key, "preview",
+ Settings.hook_changed_init(key, row.value_node,
func(value):
if is_instance_valid(row):
row.value_node.value = value
diff --git a/client/gui/menus/settings/settings.gd b/client/gui/menus/settings/settings.gd
index 7523b9fb..1099ba1d 100644
--- a/client/gui/menus/settings/settings.gd
+++ b/client/gui/menus/settings/settings.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -35,6 +35,6 @@ func _process(_dt):
func _on_back_pressed():
exit()
-func exit():
+func exit(exit_data = null):
Settings.save()
- super()
+ super(exit_data)
diff --git a/client/gui/menus/settings/settings.tscn b/client/gui/menus/settings/settings.tscn
index 71549464..c9cc4a26 100644
--- a/client/gui/menus/settings/settings.tscn
+++ b/client/gui/menus/settings/settings.tscn
@@ -1,23 +1,21 @@
-[gd_scene load_steps=6 format=3 uid="uid://8ic77jmadadj"]
+[gd_scene format=3 uid="uid://8ic77jmadadj"]
-[ext_resource type="Theme" uid="uid://b0qmvo504e457" path="res://gui/resources/theme/theme.tres" id="1_1vjiw"]
[ext_resource type="Script" uid="uid://bbqmsf8u5rhtn" path="res://gui/menus/settings/settings.gd" id="2_5xn7x"]
[ext_resource type="Script" uid="uid://byshs20og68tn" path="res://gui/components/smart_margin_container.gd" id="3_h533i"]
[ext_resource type="Material" uid="uid://beea1pc5nt67r" path="res://gui/resources/materials/dark_blur_material.tres" id="4_b0x33"]
[ext_resource type="Script" uid="uid://cmncjc06kadpe" path="res://gui/components/blur_setup.gd" id="5_dvivs"]
-[node name="SettingsMenu" type="Control"]
+[node name="SettingsMenu" type="Control" unique_id=47869629]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
-theme = ExtResource("1_1vjiw")
script = ExtResource("2_5xn7x")
support_anim = false
-[node name="OuterGap" type="MarginContainer" parent="."]
+[node name="OuterGap" type="MarginContainer" parent="." unique_id=116100814]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@@ -27,12 +25,12 @@ grow_vertical = 2
theme_override_constants/margin_left = 80
script = ExtResource("3_h533i")
-[node name="Panel" type="Panel" parent="OuterGap"]
+[node name="Panel" type="Panel" parent="OuterGap" unique_id=686950833]
material = ExtResource("4_b0x33")
layout_mode = 2
script = ExtResource("5_dvivs")
-[node name="InnerGap" type="MarginContainer" parent="OuterGap/Panel"]
+[node name="InnerGap" type="MarginContainer" parent="OuterGap/Panel" unique_id=475296017]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@@ -44,16 +42,16 @@ theme_override_constants/margin_top = 40
theme_override_constants/margin_right = 40
theme_override_constants/margin_bottom = 40
-[node name="VBoxContainer" type="VBoxContainer" parent="OuterGap/Panel/InnerGap"]
+[node name="VBoxContainer" type="VBoxContainer" parent="OuterGap/Panel/InnerGap" unique_id=1596642785]
layout_mode = 2
-[node name="Title" type="Label" parent="OuterGap/Panel/InnerGap/VBoxContainer"]
+[node name="Title" type="Label" parent="OuterGap/Panel/InnerGap/VBoxContainer" unique_id=1055890814]
layout_mode = 2
size_flags_horizontal = 0
theme_override_font_sizes/font_size = 36
text = "c.menu.settings"
-[node name="Back" type="Button" parent="OuterGap/Panel/InnerGap/VBoxContainer"]
+[node name="Back" type="Button" parent="OuterGap/Panel/InnerGap/VBoxContainer" unique_id=285069063]
layout_mode = 2
size_flags_vertical = 8
text = "c.settings.apply"
diff --git a/client/gui/menus/settings/settings_category.gd b/client/gui/menus/settings/settings_category.gd
index 28a0e75b..3801b4f1 100644
--- a/client/gui/menus/settings/settings_category.gd
+++ b/client/gui/menus/settings/settings_category.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/settings_root.gd b/client/gui/menus/settings/settings_root.gd
index 3f7fc027..972cc1f6 100644
--- a/client/gui/menus/settings/settings_root.gd
+++ b/client/gui/menus/settings/settings_root.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/settings_row.gd b/client/gui/menus/settings/settings_row.gd
index 15555eb0..4003ab5f 100644
--- a/client/gui/menus/settings/settings_row.gd
+++ b/client/gui/menus/settings/settings_row.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/client/gui/menus/settings/settings_row.tscn b/client/gui/menus/settings/settings_row.tscn
index 09378ab6..f72ca0f5 100644
--- a/client/gui/menus/settings/settings_row.tscn
+++ b/client/gui/menus/settings/settings_row.tscn
@@ -1,6 +1,6 @@
-[gd_scene load_steps=7 format=3 uid="uid://o5e5vpem8w0k"]
+[gd_scene format=3 uid="uid://o5e5vpem8w0k"]
-[ext_resource type="Theme" uid="uid://b0qmvo504e457" path="res://gui/resources/theme/theme.tres" id="1_iij3k"]
+[ext_resource type="StyleBox" uid="uid://d1xhwgrptnlli" path="res://gui/resources/style/panel_button_backround_style.tres" id="1_ik3io"]
[ext_resource type="Script" uid="uid://b3m1f76o5qo68" path="res://gui/menus/settings/settings_row.gd" id="2_l8i7p"]
[ext_resource type="FontFile" uid="uid://5ixo6b3bd3km" path="res://gui/resources/fonts/font-josefin-sans.woff2" id="3_7k5da"]
[ext_resource type="Texture2D" uid="uid://cucnmy0j5n8l8" path="res://gui/resources/icons/reset.svg" id="4_bj3dr"]
@@ -11,27 +11,27 @@ content_margin_left = 16.0
[sub_resource type="FontVariation" id="FontVariation_o6i7s"]
base_font = ExtResource("3_7k5da")
-[node name="SettingsRow" type="PanelContainer"]
+[node name="SettingsRow" type="PanelContainer" unique_id=1948353988]
offset_right = 105.0
offset_bottom = 23.0
size_flags_horizontal = 3
-theme = ExtResource("1_iij3k")
+theme_override_styles/panel = ExtResource("1_ik3io")
script = ExtResource("2_l8i7p")
-[node name="HBoxContainer" type="HBoxContainer" parent="."]
+[node name="HBoxContainer" type="HBoxContainer" parent="." unique_id=523957987]
layout_mode = 2
-[node name="Label" type="Label" parent="HBoxContainer"]
+[node name="Label" type="Label" parent="HBoxContainer" unique_id=1327916149]
layout_mode = 2
size_flags_horizontal = 3
theme_override_styles/normal = SubResource("StyleBoxEmpty_pk3rs")
-[node name="BoxContainer" type="BoxContainer" parent="HBoxContainer"]
+[node name="BoxContainer" type="BoxContainer" parent="HBoxContainer" unique_id=926679424]
custom_minimum_size = Vector2(300, 50)
layout_mode = 2
alignment = 2
-[node name="Reset" type="Button" parent="HBoxContainer"]
+[node name="Reset" type="Button" parent="HBoxContainer" unique_id=1056996279]
layout_mode = 2
theme_override_fonts/font = SubResource("FontVariation_o6i7s")
theme_override_font_sizes/font_size = 24
diff --git a/client/gui/menus/settings/text_setting.gd b/client/gui/menus/settings/text_setting.gd
index de0ef218..1be2bbc1 100644
--- a/client/gui/menus/settings/text_setting.gd
+++ b/client/gui/menus/settings/text_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -27,7 +27,7 @@ func create_row():
var input := LineEdit.new()
input.placeholder_text = placeholder
input.text_changed.connect(func(text): Settings.write(key, text))
- Settings.hook_changed_init(key, "preview",
+ Settings.hook_changed_init(key, input,
func(text):
if is_instance_valid(input):
var pos = input.caret_column
diff --git a/client/gui/menus/settings/toggle_setting.gd b/client/gui/menus/settings/toggle_setting.gd
index fa60ca74..b0dbd352 100644
--- a/client/gui/menus/settings/toggle_setting.gd
+++ b/client/gui/menus/settings/toggle_setting.gd
@@ -1,5 +1,5 @@
# Hurry Curry! - a game about cooking
-# Copyright (C) 2025 Hurry Curry! contributors
+# Copyright (C) 2026 Hurry Curry! Contributors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -23,7 +23,7 @@ func create_row():
var row = super()
row.value_node = CheckButton.new()
row.value_node.pressed.connect(func(): Settings.write(key, row.value_node.button_pressed))
- Settings.hook_changed_init(key, "preview",
+ Settings.hook_changed_init(key, row.value_node,
func(value):
if is_instance_valid(row):
row.value_node.button_pressed = value