xiandie/manager/archive_manager/ground_archive.gd

32 lines
610 B
GDScript

class_name GroundArchive extends Resource
@export var scene_name := ""
# node_name -> dictionary
@export var data := {}
func set_data(name: String, d: Dictionary) -> void:
data[name] = d
func set_pair(name: String, key: String, val: Variant) -> void:
if data.has(name):
data[name][key] = val
else:
data[name] = {key: val}
func get_data(name: String) -> Dictionary:
if data.has(name):
return data[name]
data[name] = {}
return {}
func get_value(name: String, key: String, default = null) -> Variant:
if data.has(name):
var d = data[name]
if d.has(key):
return d[key]
return default