Skip to content

Commit a2ed816

Browse files
committed
save decal list to the storage file
1 parent cd64b8d commit a2ed816

3 files changed

Lines changed: 15 additions & 2 deletions

File tree

addons/splasher/splasher.gd

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ const Globals := preload("res://addons/splasher/globals.gd")
55
const DockPanel := preload("res://addons/splasher/splasher_dock.tscn")
66
const ViewportPanel := preload("res://addons/splasher/ui_viewport_panel.tscn")
77
const StorageResource := preload("res://addons/splasher/storage.gd")
8+
const StoredDecalResource := preload("res://addons/splasher/stored_decal.gd")
89

910
var dock: Control
1011
var viewport_panel: Control
@@ -65,11 +66,17 @@ func save_settings() -> void:
6566
var res := StorageResource.new()
6667
res.decal_settings = manager.decal_settings.storage
6768
res.plugin_settings = manager.plugin_settings.storage
69+
70+
for decal in manager.decal_list.items:
71+
var stored_decal := StoredDecalResource.new()
72+
stored_decal.albedo_path = decal
73+
res.decal_registry.push_back(stored_decal)
74+
6875
if ResourceSaver.save(res, Globals.SAVE_FILE_PATH) != OK:
6976
printerr("Couldn't save Splasher settings file")
7077

7178
func load_settings() -> void:
72-
var res := ResourceLoader.load(Globals.SAVE_FILE_PATH)
79+
var res := ResourceLoader.load(Globals.SAVE_FILE_PATH) as StorageResource
7380
if not res:
7481
printerr("Couldn't load Splasher settings file")
7582
return
@@ -78,5 +85,8 @@ func load_settings() -> void:
7885
manager.decal_settings.set_storage(res.decal_settings)
7986
manager.plugin_settings.set_storage(res.plugin_settings)
8087

88+
for stored_decal: StoredDecalResource in res.decal_registry:
89+
manager.decal_list.push_back(stored_decal.albedo_path)
90+
8191
func has_settings_file() -> bool:
8292
return ResourceLoader.exists(Globals.SAVE_FILE_PATH)

addons/splasher/storage.gd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ enum StorageVersion {
44
Version_Alpha = 0
55
}
66

7-
#@export var decal_registry: Array = []
7+
@export var decal_registry: Array = []
88
@export var decal_settings: Dictionary = {}
99
@export var plugin_settings: Dictionary = {}
1010
@export var version: StorageVersion = StorageVersion.Version_Alpha

addons/splasher/stored_decal.gd

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
extends Resource
2+
3+
@export var albedo_path: String

0 commit comments

Comments
 (0)