From 6845e7407a40451506f0b88b12c560a486aeef54 Mon Sep 17 00:00:00 2001 From: Ryan Reed Date: Thu, 27 Mar 2025 18:47:35 -0400 Subject: [PATCH] Moving open_save_list_ui and close_save_list_ui our of SaveGameManager --- addons/save_load_system/autoloads/save_game_manager.gd | 2 -- scenes/ui/menus/pause_menu.gd | 4 +++- scenes/ui/menus/saves_manager/save_files_list.gd | 5 +++-- scenes/ui/menus/saves_manager/save_load_ui.gd | 4 ++++ scenes/ui/menus/saves_manager/save_load_ui.tscn | 3 ++- scenes/ui/ui.gd | 8 +++++--- scenes/ui/ui.tscn | 3 ++- 7 files changed, 19 insertions(+), 10 deletions(-) diff --git a/addons/save_load_system/autoloads/save_game_manager.gd b/addons/save_load_system/autoloads/save_game_manager.gd index 877a0c6..0b92881 100644 --- a/addons/save_load_system/autoloads/save_game_manager.gd +++ b/addons/save_load_system/autoloads/save_game_manager.gd @@ -21,8 +21,6 @@ signal save_error(error_message: String) signal quick_save signal quick_load -signal open_save_list_ui -signal close_save_list_ui signal toggle_save_icon_generation(toggled: bool) ## Enable/Disable the generation of a screenshot during save for the save icon. diff --git a/scenes/ui/menus/pause_menu.gd b/scenes/ui/menus/pause_menu.gd index 9be0c5a..921b179 100644 --- a/scenes/ui/menus/pause_menu.gd +++ b/scenes/ui/menus/pause_menu.gd @@ -1,6 +1,8 @@ class_name PauseMenu extends Panel +@export var save_load_ui: SaveLoadUI + func _unhandled_input(event: InputEvent) -> void: if event.is_action_pressed("ui_cancel") and self.visible: @@ -27,4 +29,4 @@ func _on_settings_button_pressed() -> void: SignalManager.open_settings_menu.emit() func _on_saves_button_pressed() -> void: - SaveGameManager.open_save_list_ui.emit() + save_load_ui.open_save_list.emit() diff --git a/scenes/ui/menus/saves_manager/save_files_list.gd b/scenes/ui/menus/saves_manager/save_files_list.gd index b586bab..ebe9209 100644 --- a/scenes/ui/menus/saves_manager/save_files_list.gd +++ b/scenes/ui/menus/saves_manager/save_files_list.gd @@ -2,10 +2,11 @@ extends VBoxContainer @export var save_file_scene: PackedScene +@export var save_load_ui: SaveLoadUI func _ready() -> void: - SaveGameManager.open_save_list_ui.connect(_on_open_save_list_ui) + save_load_ui.open_save_list.connect(_on_open_save_list) # TODO: Reconsider this setup ## Clear the SaveFilesList node of all saves and load most recent saves @@ -24,5 +25,5 @@ func _clear_save_files_list() -> void: for _panel: SaveFilePanel in get_children(): _panel.queue_free() -func _on_open_save_list_ui() -> void: +func _on_open_save_list() -> void: refresh_saves_list() diff --git a/scenes/ui/menus/saves_manager/save_load_ui.gd b/scenes/ui/menus/saves_manager/save_load_ui.gd index c7ed11c..6f92972 100644 --- a/scenes/ui/menus/saves_manager/save_load_ui.gd +++ b/scenes/ui/menus/saves_manager/save_load_ui.gd @@ -2,6 +2,10 @@ class_name SaveLoadUI extends Control +signal close_save_list +signal open_save_list + + @export var show_save_ui_button: BaseButton @export var new_save_ui: Control @export var save_name_input: LineEdit diff --git a/scenes/ui/menus/saves_manager/save_load_ui.tscn b/scenes/ui/menus/saves_manager/save_load_ui.tscn index 74d6a20..0e70e6c 100644 --- a/scenes/ui/menus/saves_manager/save_load_ui.tscn +++ b/scenes/ui/menus/saves_manager/save_load_ui.tscn @@ -58,9 +58,10 @@ custom_minimum_size = Vector2(0, 500) layout_mode = 2 horizontal_scroll_mode = 0 -[node name="SaveFilesList" parent="Panel/MarginContainer/VBoxContainer/ScrollContainer" instance=ExtResource("1_tqtxm")] +[node name="SaveFilesList" parent="Panel/MarginContainer/VBoxContainer/ScrollContainer" node_paths=PackedStringArray("save_load_ui") instance=ExtResource("1_tqtxm")] layout_mode = 2 size_flags_horizontal = 6 +save_load_ui = NodePath("../../../../..") [node name="SaveFilePanel" parent="Panel/MarginContainer/VBoxContainer/ScrollContainer/SaveFilesList" instance=ExtResource("2_6uxbh")] layout_mode = 2 diff --git a/scenes/ui/ui.gd b/scenes/ui/ui.gd index b09fce4..3bf674d 100644 --- a/scenes/ui/ui.gd +++ b/scenes/ui/ui.gd @@ -5,7 +5,7 @@ extends CanvasLayer @onready var crosshair: CenterContainer = $Crosshair @onready var quick_slots: MarginContainer = $QuickSlots @onready var pause_menu: PauseMenu = $PauseMenu -@onready var save_load_ui: Control = $SaveLoadUI +@onready var save_load_ui: SaveLoadUI = $SaveLoadUI @onready var settings_menu: SettingsMenu = $SettingsMenu @onready var waila: Waila = $Waila @@ -16,8 +16,10 @@ func _ready() -> void: SignalManager.close_settings_menu.connect(_on_close_settings_menu) SignalManager.open_settings_menu.connect(_on_open_settings_menu) SignalManager.resume_game.connect(_on_resume_game) - SaveGameManager.close_save_list_ui.connect(_on_close_save_list_ui) - SaveGameManager.open_save_list_ui.connect(_on_open_save_list_ui) + + save_load_ui.close_save_list.connect(_on_close_save_list_ui) + save_load_ui.open_save_list.connect(_on_open_save_list_ui) + SaveGameManager.load_complete.connect(_on_load_complete) _on_resume_game() diff --git a/scenes/ui/ui.tscn b/scenes/ui/ui.tscn index 98690a1..d0c4768 100644 --- a/scenes/ui/ui.tscn +++ b/scenes/ui/ui.tscn @@ -31,8 +31,9 @@ mouse_filter = 2 [node name="QuickSlots" parent="." instance=ExtResource("4_g5kmx")] -[node name="PauseMenu" parent="." instance=ExtResource("6_7vp6q")] +[node name="PauseMenu" parent="." node_paths=PackedStringArray("save_load_ui") instance=ExtResource("6_7vp6q")] visible = false +save_load_ui = NodePath("../SaveLoadUI") [node name="SettingsMenu" parent="." instance=ExtResource("7_7vp6q")] visible = false