diff options
author | Spartan322 <Megacake1234@gmail.com> | 2023-04-23 22:01:49 +0200 |
---|---|---|
committer | Spartan322 <Megacake1234@gmail.com> | 2023-05-12 13:32:21 +0200 |
commit | 8ab166ae0bd784145c3706aba0c3f3326cbbaac1 (patch) | |
tree | e4511c51eb4ceaefd92a7ad8a00f42910eb83811 /game/src/LobbyMenu/LobbyMenu.tscn | |
parent | 398ba6f05ae1bb13e59790436bf0da299e5a399d (diff) |
Add SaveManager autoload singleton
Globally handles save finding, creation, removal, changes, naming, and flushing
Globally handles the session tags for the active save
Add SaveLoadMenu to GameSession
Add Start Date Panel and Save Panel loading to LobbyMenu
Includes session tag filter
Add LobbyPanelButton and SavePanelButton scene and scripts
Add SaveResource to handle saving and loading individual save files
Add localization for SaveLoadMenu
Expand localization for additions to LobbyMenu
Add ButtonContainer variation type to default theme
Fulfill:
UI-82, UI-83, UI-84, UI-85, UI-87, UI-89, UI-90, UI-91, UI-92, UI-94
UIFUN-82, UIFUN-83, UIFUN-84, UIFUN-86, UIFUN-87, UIFUN-89
FS-28
Diffstat (limited to 'game/src/LobbyMenu/LobbyMenu.tscn')
-rw-r--r-- | game/src/LobbyMenu/LobbyMenu.tscn | 65 |
1 files changed, 59 insertions, 6 deletions
diff --git a/game/src/LobbyMenu/LobbyMenu.tscn b/game/src/LobbyMenu/LobbyMenu.tscn index 174fb72..63a66d8 100644 --- a/game/src/LobbyMenu/LobbyMenu.tscn +++ b/game/src/LobbyMenu/LobbyMenu.tscn @@ -1,8 +1,10 @@ -[gd_scene load_steps=2 format=3 uid="uid://crhkgngfnxf4y"] +[gd_scene load_steps=4 format=3 uid="uid://do60kx0d3nrh4"] [ext_resource type="Script" path="res://src/LobbyMenu/LobbyMenu.gd" id="1_cvwum"] +[ext_resource type="PackedScene" uid="uid://k71f5gibwmtc" path="res://src/LobbyMenu/LobbyPanelButton.tscn" id="2_exh17"] +[ext_resource type="PackedScene" uid="uid://d2s7roinx2or7" path="res://src/SaveLoadMenu/SavePanelButton.tscn" id="3_4otj7"] -[node name="LobbyMenu" type="HBoxContainer" node_paths=PackedStringArray("start_button")] +[node name="LobbyMenu" type="HBoxContainer" node_paths=PackedStringArray("game_select_start_date", "game_select_save_tab", "game_select_save_list", "start_button", "session_tag_line_edit", "session_tag_dialog", "delete_dialog")] editor_description = "UI-36" anchors_preset = 15 anchor_right = 1.0 @@ -10,7 +12,15 @@ anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 script = ExtResource("1_cvwum") +lobby_panel_button = ExtResource("2_exh17") +save_scene = ExtResource("3_4otj7") +game_select_start_date = NodePath("GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList/GameSelectStartDate") +game_select_save_tab = NodePath("GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList/GameSelectSaveTab") +game_select_save_list = NodePath("GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList/GameSelectSaveList") start_button = NodePath("GameStartPanel/VBoxContainer/StartButton") +session_tag_line_edit = NodePath("GameStartPanel/VBoxContainer/SessionTagEdit") +session_tag_dialog = NodePath("SessionTagDialog") +delete_dialog = NodePath("DeleteDialog") [node name="GameSelectPanel" type="PanelContainer" parent="."] layout_mode = 2 @@ -19,7 +29,30 @@ size_flags_horizontal = 3 [node name="VBoxContainer" type="VBoxContainer" parent="GameSelectPanel"] layout_mode = 2 +[node name="GameSelectScroll" type="ScrollContainer" parent="GameSelectPanel/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +horizontal_scroll_mode = 0 + +[node name="GameSelectList" type="VBoxContainer" parent="GameSelectPanel/VBoxContainer/GameSelectScroll"] +layout_mode = 2 +size_flags_horizontal = 3 +size_flags_vertical = 3 + +[node name="GameSelectStartDate" type="VBoxContainer" parent="GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList"] +layout_mode = 2 + +[node name="GameSelectSaveTab" type="TabBar" parent="GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList"] +layout_mode = 2 +tab_count = 1 +tab_0/title = "GAMELOBBY_SELECT_ALL" + +[node name="GameSelectSaveList" type="VBoxContainer" parent="GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList"] +layout_mode = 2 +size_flags_vertical = 3 + [node name="GameSelectList" type="ItemList" parent="GameSelectPanel/VBoxContainer"] +visible = false layout_mode = 2 size_flags_vertical = 3 item_count = 2 @@ -67,6 +100,10 @@ custom_minimum_size = Vector2(0, 150) layout_mode = 2 size_flags_vertical = 3 +[node name="SessionTagEdit" type="LineEdit" parent="GameStartPanel/VBoxContainer"] +layout_mode = 2 +placeholder_text = "GAMELOBBY_SESSION_TAG" + [node name="StartButton" type="Button" parent="GameStartPanel/VBoxContainer"] editor_description = "UI-43" layout_mode = 2 @@ -77,8 +114,24 @@ text = "GAMELOBBY_START" custom_minimum_size = Vector2(0, 33) layout_mode = 2 -[connection signal="save_game_selected" from="." to="." method="_on_save_game_selected"] -[connection signal="item_activated" from="GameSelectPanel/VBoxContainer/GameSelectList" to="." method="_on_game_select_list_item_activated"] -[connection signal="item_selected" from="GameSelectPanel/VBoxContainer/GameSelectList" to="." method="_on_game_select_list_item_selected"] +[node name="SessionTagDialog" type="ConfirmationDialog" parent="."] +disable_3d = true +title = "GAMELOBBY_SESSIONTAG_DIALOG_TITLE" +ok_button_text = "DIALOG_OK" +dialog_text = "GAMELOBBY_SESSIONTAG_DIALOG_TEXT" +cancel_button_text = "DIALOG_CANCEL" + +[node name="DeleteDialog" type="ConfirmationDialog" parent="."] +disable_3d = true +title = "GAMELOBBY_DELETE_DIALOG_TITLE" +ok_button_text = "DIALOG_OK" +dialog_text = "GAMELOBBY_DELETE_DIALOG_TEXT" +cancel_button_text = "DIALOG_CANCEL" + +[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"] +[connection signal="tab_changed" from="GameSelectPanel/VBoxContainer/GameSelectScroll/GameSelectList/GameSelectSaveTab" to="." method="_on_game_select_save_tab_tab_changed"] [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"] +[connection signal="text_submitted" from="GameStartPanel/VBoxContainer/SessionTagEdit" to="." method="_on_session_tag_edit_text_submitted"] +[connection signal="pressed" from="GameStartPanel/VBoxContainer/StartButton" to="." method="_on_start_button_pressed"] +[connection signal="confirmed" from="SessionTagDialog" to="." method="_on_session_tag_dialog_confirmed"] +[connection signal="confirmed" from="DeleteDialog" to="." method="_on_delete_dialog_confirmed"] |