diff --git a/resources/save_file_highlight_panel_theme.tres b/resources/save_file_highlight_panel_theme.tres new file mode 100644 index 0000000..083bbaa --- /dev/null +++ b/resources/save_file_highlight_panel_theme.tres @@ -0,0 +1,4 @@ +[gd_resource type="StyleBoxFlat" format=3 uid="uid://bwm315lqbbb87"] + +[resource] +bg_color = Color(0.728173, 0.579132, 0.164487, 1) diff --git a/resources/save_file_panel_theme.tres b/resources/save_file_panel_theme.tres new file mode 100644 index 0000000..7835864 --- /dev/null +++ b/resources/save_file_panel_theme.tres @@ -0,0 +1,8 @@ +[gd_resource type="StyleBoxFlat" format=3 uid="uid://biousyggn7iua"] + +[resource] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 +bg_color = Color(0, 0.65098, 0.886275, 0) diff --git a/resources/save_load_node_types/block_data_resource.gd b/resources/save_load_node_types/block_data_resource.gd new file mode 100644 index 0000000..1c08dc6 --- /dev/null +++ b/resources/save_load_node_types/block_data_resource.gd @@ -0,0 +1,16 @@ +## The resource utilized for saving a Block +class_name BlockDataResource +extends Node3DDataResource + + +@export var block_id: String = "001" + + +func _save_data(node: Node3D) -> void: + super._save_data(node) + + block_id = node.id + + +func _load_data(_window: Window) -> void: + EntityManager.create_block.emit(block_id, transform.origin) diff --git a/resources/save_load_node_types/block_data_resource.gd.uid b/resources/save_load_node_types/block_data_resource.gd.uid new file mode 100644 index 0000000..ce2e53a --- /dev/null +++ b/resources/save_load_node_types/block_data_resource.gd.uid @@ -0,0 +1 @@ +uid://syaia0l6vjt1 diff --git a/resources/save_load_node_types/block_data_resource.tres b/resources/save_load_node_types/block_data_resource.tres new file mode 100644 index 0000000..b17c007 --- /dev/null +++ b/resources/save_load_node_types/block_data_resource.tres @@ -0,0 +1,12 @@ +[gd_resource type="Resource" script_class="BlockDataResource" load_steps=2 format=3 uid="uid://dfos8np8agysk"] + +[ext_resource type="Script" uid="uid://syaia0l6vjt1" path="res://resources/save_load_node_types/block_data_resource.gd" id="1_a06et"] + +[resource] +script = ExtResource("1_a06et") +block_id = "001" +block_position = Vector3(0, 0, 0) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +node_path = NodePath("") +parent_node_path = NodePath("") +metadata/_custom_type_script = "uid://syaia0l6vjt1" diff --git a/resources/save_load_node_types/player_data_resource.gd b/resources/save_load_node_types/player_data_resource.gd new file mode 100644 index 0000000..c2b7cfb --- /dev/null +++ b/resources/save_load_node_types/player_data_resource.gd @@ -0,0 +1,16 @@ +## The resource utilized for saving a Player +class_name PlayerDataResource +extends Node3DDataResource + + +func _save_data(node: Node3D) -> void: + super._save_data(node) + # TODO: Save inventory or any other data + + +func _load_data(window: Window) -> void: + var scene_node: Node = window.get_node_or_null(node_path) + + if scene_node == null: return + + EntityManager.spawn_player.emit(transform) diff --git a/resources/save_load_node_types/player_data_resource.gd.uid b/resources/save_load_node_types/player_data_resource.gd.uid new file mode 100644 index 0000000..76f78ef --- /dev/null +++ b/resources/save_load_node_types/player_data_resource.gd.uid @@ -0,0 +1 @@ +uid://dodqpooodtguo diff --git a/resources/save_load_node_types/player_data_resource.tres b/resources/save_load_node_types/player_data_resource.tres new file mode 100644 index 0000000..e76eb45 --- /dev/null +++ b/resources/save_load_node_types/player_data_resource.tres @@ -0,0 +1,10 @@ +[gd_resource type="Resource" script_class="PlayerDataResource" load_steps=2 format=3 uid="uid://bvsurbn5xgchr"] + +[ext_resource type="Script" uid="uid://dodqpooodtguo" path="res://resources/save_load_node_types/player_data_resource.gd" id="1_scty6"] + +[resource] +script = ExtResource("1_scty6") +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) +node_path = NodePath("") +parent_node_path = NodePath("") +metadata/_custom_type_script = "uid://dodqpooodtguo"