aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-07-17 23:09:15 +0200
committermetamuffin <metamuffin@disroot.org>2024-07-17 23:09:15 +0200
commit9c2da5a7beba1254e52c907d501a22dec0075ac6 (patch)
tree05e2ebda0f8c24d122759ab98301afe28368dee4
parentdb36af42d34e1af26d4f76a14f310eea367396f9 (diff)
downloadhurrycurry-9c2da5a7beba1254e52c907d501a22dec0075ac6.tar
hurrycurry-9c2da5a7beba1254e52c907d501a22dec0075ac6.tar.bz2
hurrycurry-9c2da5a7beba1254e52c907d501a22dec0075ac6.tar.zst
pass data to submenu and more form validation
-rw-r--r--client/menu/credits.tscn1
-rw-r--r--client/menu/ingame.gd2
-rw-r--r--client/menu/main.gd4
-rw-r--r--client/menu/menu.gd8
-rw-r--r--client/menu/settings.tscn1
-rw-r--r--client/menu/setup.gd12
-rw-r--r--client/menu/warning_popup.gd4
-rw-r--r--data/recipes/default.ts3
8 files changed, 25 insertions, 10 deletions
diff --git a/client/menu/credits.tscn b/client/menu/credits.tscn
index ff44627a..3cca53dc 100644
--- a/client/menu/credits.tscn
+++ b/client/menu/credits.tscn
@@ -13,6 +13,7 @@ grow_horizontal = 2
grow_vertical = 2
theme = ExtResource("1_16kk6")
script = ExtResource("2_alvab")
+support_anim = false
[node name="MarginContainer" type="MarginContainer" parent="."]
layout_mode = 1
diff --git a/client/menu/ingame.gd b/client/menu/ingame.gd
index 75fdc16e..9ca80f2c 100644
--- a/client/menu/ingame.gd
+++ b/client/menu/ingame.gd
@@ -51,7 +51,7 @@ func _on_main_menu_pressed():
parent_menu.replace_menu("res://menu/main.tscn")
func _on_settings_pressed():
- submenu("res://menu/settings.tscn", true)
+ submenu("res://menu/settings.tscn")
func _on_reconnect_pressed():
parent_menu.replace_menu("res://menu/game.tscn")
diff --git a/client/menu/main.gd b/client/menu/main.gd
index a0ad2ee5..27f8b5b9 100644
--- a/client/menu/main.gd
+++ b/client/menu/main.gd
@@ -35,7 +35,7 @@ func _on_quit_pressed():
quit()
func _on_credits_pressed():
- submenu("res://menu/credits.tscn", true)
+ submenu("res://menu/credits.tscn")
func _on_connect_pressed():
var url = connect_uri.text
@@ -61,7 +61,7 @@ func _on_change_character_pressed():
replace_menu("res://menu/character.tscn")
func _on_settings_pressed():
- submenu("res://menu/settings.tscn", true)
+ submenu("res://menu/settings.tscn")
func _on_server_pressed():
match Server.state:
diff --git a/client/menu/menu.gd b/client/menu/menu.gd
index 5d6946cf..d2da3529 100644
--- a/client/menu/menu.gd
+++ b/client/menu/menu.gd
@@ -23,12 +23,14 @@ extends Control
@export var support_anim := true
@export var auto_anim := true
+var data
+
signal submenu_close()
const transition_scene = preload("res://menu/scene_transition.tscn")
var transition: SceneTransition
var parent_menu: Menu = null
-var open_since
+var open_since = 0
func _ready():
open_since = Time.get_ticks_msec()
@@ -49,13 +51,13 @@ func menu_anim_cover(_state: bool):
pass
var popup: Menu = null
-func submenu(path: String, instant: bool = false):
+func submenu(path: String, data = null):
var prev_focus = Global.focused_node
if popup != null: return
_disable_recursive(self, true)
await menu_anim_cover(true)
popup = load(path).instantiate()
- if instant: popup.support_anim = false
+ popup.data = data
add_child(popup)
print("Submenu opened ", path)
await submenu_close
diff --git a/client/menu/settings.tscn b/client/menu/settings.tscn
index c2cc130d..e5a0d1c5 100644
--- a/client/menu/settings.tscn
+++ b/client/menu/settings.tscn
@@ -13,6 +13,7 @@ grow_horizontal = 2
grow_vertical = 2
theme = ExtResource("1_foq3a")
script = ExtResource("2_3hgm8")
+support_anim = false
[node name="OuterGap" type="MarginContainer" parent="."]
layout_mode = 1
diff --git a/client/menu/setup.gd b/client/menu/setup.gd
index 9ed6bb64..6e901b9c 100644
--- a/client/menu/setup.gd
+++ b/client/menu/setup.gd
@@ -50,9 +50,17 @@ func _process(delta):
var s = Input.get_axis("rotate_up", "rotate_down")
scroll.set_deferred("scroll_vertical", scroll.scroll_vertical + s * delta * SCROLL_SPEED)
+
+func check():
+ if username.text == "": return "Username cannot be empty"
+ var n = username.text.to_lower()
+ if n.begins_with("f") and n.ends_with("miller"): return "You are not Frank Miller"
+ if character == -1: return "You must select a hairstyle"
+ return null
+
func _on_sign_pressed():
- if username.text == "" or character == -1:
- await submenu("res://menu/warning_popup.tscn")
+ if check() != null: # TODO show error message
+ await submenu("res://menu/warning_popup.tscn", check())
return
sign_button.disabled = true
diff --git a/client/menu/warning_popup.gd b/client/menu/warning_popup.gd
index f418550b..20741834 100644
--- a/client/menu/warning_popup.gd
+++ b/client/menu/warning_popup.gd
@@ -1,5 +1,9 @@
extends Menu
class_name WarningPopup
+func _ready():
+ print(self.data)
+ $CenterContainer/Panel/MarginContainer/VBoxContainer/Message.text = self.data
+
func _on_accept_pressed():
exit()
diff --git a/data/recipes/default.ts b/data/recipes/default.ts
index 446a1e19..72299518 100644
--- a/data/recipes/default.ts
+++ b/data/recipes/default.ts
@@ -227,8 +227,7 @@ edible(
sink_fill(GL)
)
-
-const curry_with_rice = combine(PL, cook(rice.tr(POT)), cook(combine(POT, milk, tomato, leek))).as("curry-with-rice")
+const curry_with_rice = combine(PL, cook(rice.tr(POT)), cook(combine(POT, milk, tomato, leek)))
edible(curry_with_rice)
auto_trash()