From 0ede9891d91878518331c89673b8fe32d6758de0 Mon Sep 17 00:00:00 2001 From: Ryan Reed Date: Wed, 26 Mar 2025 15:12:12 -0400 Subject: [PATCH] Create save with just save name (not filename) --- save_load/autoloads/save_game_manager.gd | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/save_load/autoloads/save_game_manager.gd b/save_load/autoloads/save_game_manager.gd index d1da3f5..9d69135 100644 --- a/save_load/autoloads/save_game_manager.gd +++ b/save_load/autoloads/save_game_manager.gd @@ -11,7 +11,7 @@ signal game_saved signal game_loaded signal refresh_saves_list signal create_auto_save_file -signal create_save_file(filename: String) +signal create_save_file(save_name: String) signal delete_save_file(filename: String) signal load_save_file(filename: String) signal quick_save @@ -27,7 +27,7 @@ var _save_level_data_component: SaveLevelDataComponent ## Contains the save path func _ready() -> void: quick_load.connect(quick_load_game) quick_save.connect(quick_load_game) - create_save_file.connect(_save_game_as_resource) + create_save_file.connect(_on_save_game_as_resource) load_save_file.connect(_load_game_resource) func _unhandled_input(event: InputEvent) -> void: @@ -130,7 +130,7 @@ func _save_game_as_resource(resource_filename: String) -> void: var result: int = ResourceSaver.save(_game_data_resource, save_game_file_path) if result != OK: - printerr("Failed to save game: ", result) + printerr("Failed to save game (" , result, "): ", save_game_file_path) ## Save the properties defined on the SaveDataComponents attached to various nodes (such as Block) func _save_node_data() -> void: @@ -144,3 +144,14 @@ func _save_node_data() -> void: var save_data_resource: Node3DDataResource = node._save_data() var save_final_resource: Node3DDataResource = save_data_resource.duplicate() _game_data_resource.save_data_nodes.append(save_final_resource) + + +func _on_save_game_as_resource(save_name: String) -> void: + if not _load_save_level_data_component(): return + + var current_date: String = Time.get_datetime_string_from_system().replace(":", "") + var _filename: String = "save_" + current_date + ".tres" + + _game_data_resource.save_name = save_name + _save_game_as_resource(_filename) + game_saved.emit()