aboutsummaryrefslogtreecommitdiff
path: root/game/src/LobbyMenu
diff options
context:
space:
mode:
Diffstat (limited to 'game/src/LobbyMenu')
-rw-r--r--game/src/LobbyMenu/LobbyMenu.gd35
-rw-r--r--game/src/LobbyMenu/LobbyMenu.tscn73
2 files changed, 108 insertions, 0 deletions
diff --git a/game/src/LobbyMenu/LobbyMenu.gd b/game/src/LobbyMenu/LobbyMenu.gd
new file mode 100644
index 0000000..bf20ce0
--- /dev/null
+++ b/game/src/LobbyMenu/LobbyMenu.gd
@@ -0,0 +1,35 @@
+extends Control
+
+# REQUIREMENTS:
+# * 1.4 Game Lobby Menu
+# * SS-12
+
+signal back_button_pressed
+signal save_game_selected
+
+@export
+var start_button : BaseButton
+
+# REQUIREMENTS:
+# * UIFUN-40
+func _on_back_button_button_down():
+ print("Returning to Main Menu.")
+ back_button_pressed.emit()
+
+
+# REQUIREMENTS:
+# * UIFUN-65
+func _on_start_button_button_down():
+ print("Starting new game.")
+ get_tree().change_scene_to_file("res://src/SampleGame.tscn")
+
+
+# REQUIREMENTS:
+# * UIFUN-61
+func _on_game_select_list_item_selected(index):
+ print("Selected save game: ", index)
+ save_game_selected.emit(index)
+
+
+func _on_save_game_selected(_index):
+ start_button.disabled = false
diff --git a/game/src/LobbyMenu/LobbyMenu.tscn b/game/src/LobbyMenu/LobbyMenu.tscn
new file mode 100644
index 0000000..5dad422
--- /dev/null
+++ b/game/src/LobbyMenu/LobbyMenu.tscn
@@ -0,0 +1,73 @@
+[gd_scene load_steps=2 format=3 uid="uid://crhkgngfnxf4y"]
+
+[ext_resource type="Script" path="res://src/LobbyMenu/LobbyMenu.gd" id="1_cvwum"]
+
+[node name="LobbyMenu" type="Control" node_paths=PackedStringArray("start_button")]
+layout_mode = 3
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+script = ExtResource("1_cvwum")
+start_button = NodePath("GameStartPanel/VBoxContainer/StartButton")
+
+[node name="GameSelectPanel" type="Panel" parent="."]
+layout_mode = 0
+offset_right = 270.0
+offset_bottom = 718.0
+
+[node name="VBoxContainer" type="VBoxContainer" parent="GameSelectPanel"]
+layout_mode = 0
+offset_right = 268.0
+offset_bottom = 717.0
+
+[node name="GameSelectList" type="ItemList" parent="GameSelectPanel/VBoxContainer"]
+custom_minimum_size = Vector2(268, 500)
+layout_mode = 2
+item_count = 2
+item_0/text = "1836"
+item_1/text = "1863"
+
+[node name="MarginContainer" type="MarginContainer" parent="GameSelectPanel/VBoxContainer"]
+custom_minimum_size = Vector2(0, 150)
+layout_mode = 2
+
+[node name="BackButton" type="Button" parent="GameSelectPanel/VBoxContainer"]
+layout_mode = 2
+text = "Back"
+
+[node name="GameStartPanel" type="Panel" parent="."]
+layout_mode = 0
+offset_left = 1010.0
+offset_right = 1280.0
+offset_bottom = 718.0
+
+[node name="VBoxContainer" type="VBoxContainer" parent="GameStartPanel"]
+layout_mode = 0
+offset_right = 268.0
+offset_bottom = 718.0
+
+[node name="TopMarginContainer" type="MarginContainer" parent="GameStartPanel/VBoxContainer"]
+custom_minimum_size = Vector2(0, 50)
+layout_mode = 2
+
+[node name="SelectedCountryNameLabel" type="Label" parent="GameStartPanel/VBoxContainer"]
+custom_minimum_size = Vector2(0, 50)
+layout_mode = 2
+text = "France"
+horizontal_alignment = 1
+
+[node name="MarginContainer" type="MarginContainer" parent="GameStartPanel/VBoxContainer"]
+custom_minimum_size = Vector2(0, 550)
+layout_mode = 2
+
+[node name="StartButton" type="Button" parent="GameStartPanel/VBoxContainer"]
+layout_mode = 2
+disabled = true
+text = "Start Game"
+
+[connection signal="save_game_selected" from="." to="." method="_on_save_game_selected"]
+[connection signal="item_selected" from="GameSelectPanel/VBoxContainer/GameSelectList" to="." method="_on_game_select_list_item_selected"]
+[connection signal="button_down" from="GameSelectPanel/VBoxContainer/BackButton" to="." method="_on_back_button_button_down"]
+[connection signal="button_down" from="GameStartPanel/VBoxContainer/StartButton" to="." method="_on_start_button_button_down"]