delete groups

This commit is contained in:
2023-05-27 06:08:36 +03:00
parent 97b1aad886
commit ee5f270bbe
2 changed files with 16 additions and 4 deletions

View File

@ -4,7 +4,7 @@ const GROUPS_BASE_FOLDER := "user://groups"
const METADATA_FILENAME := "meta.tres"
# key: GroupMetadata
# values: String = UUID
# value: String = UUID
var groups: Dictionary = {}
@ -13,7 +13,7 @@ func _ready() -> void:
func create_group_folder(gm: GroupMetadata) -> void:
if gm in groups.values():
if gm in groups:
return
var folder_name := UUID.v4()
@ -24,6 +24,15 @@ func create_group_folder(gm: GroupMetadata) -> void:
gm.save_request.connect(group_metadata_should_save.bind(gm))
func delete_group_folder(gm: GroupMetadata) -> void:
if !groups.has(gm):
return
var path := ProjectSettings.globalize_path(GROUPS_BASE_FOLDER.path_join(groups[gm]))
OS.move_to_trash(path)
groups.erase(gm)
func group_metadata_should_save(gm: GroupMetadata) -> void:
var path := GROUPS_BASE_FOLDER.path_join(groups[gm]).path_join(METADATA_FILENAME)
var save_err := ResourceSaver.save(gm, path)