A Minecraft style clone in Godot
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

26 lines
682 B

## Add to any node that has data we need to save
## Each node type, such as TileMapLayer, will need a resource created for it
## See `res://save_load/resources/node_types/`
class_name SaveDataComponent
extends Node
@export var save_data_resource: Resource ## The resource describing the type of object being saved
@onready var parent_node: Node = get_parent()
func _ready() -> void:
add_to_group("save_data_component")
func _save_data() -> Resource:
if parent_node == null:
return
if save_data_resource == null:
push_error("save_data_resource not defined on node ", parent_node.name)
return
save_data_resource._save_data(parent_node)
return save_data_resource