diff --git a/Babushka.sln.DotSettings.user b/Babushka.sln.DotSettings.user index a3c8dc9..349fb41 100644 --- a/Babushka.sln.DotSettings.user +++ b/Babushka.sln.DotSettings.user @@ -8,6 +8,7 @@ ForceIncluded ForceIncluded ForceIncluded + ForceIncluded ForceIncluded ForceIncluded ForceIncluded diff --git a/resources/itemRepository.tres b/resources/itemRepository.tres new file mode 100644 index 0000000..bbec729 --- /dev/null +++ b/resources/itemRepository.tres @@ -0,0 +1,8 @@ +[gd_resource type="Resource" script_class="ItemRepository" load_steps=2 format=3 uid="uid://d284vxftxhym0"] + +[ext_resource type="Script" uid="uid://oafmfqkdqewd" path="res://scripts/CSharp/Common/Inventory/ItemRepository.cs" id="1_ew4x0"] + +[resource] +script = ExtResource("1_ew4x0") +itemInventoryRepository = Dictionary[Object, String]({}) +metadata/_custom_type_script = "uid://oafmfqkdqewd" diff --git a/resources/items/tomato_seed.tres b/resources/items/tomato_seed.tres index 6d039fa..e778349 100644 --- a/resources/items/tomato_seed.tres +++ b/resources/items/tomato_seed.tres @@ -1,8 +1,7 @@ -[gd_resource type="Resource" script_class="ItemResource" load_steps=4 format=3 uid="uid://d1uuxp1lp4aro"] +[gd_resource type="Resource" script_class="ItemResource" load_steps=3 format=3 uid="uid://d1uuxp1lp4aro"] [ext_resource type="Script" uid="uid://cbskymrxs6ksu" path="res://scripts/CSharp/Common/Inventory/ItemResource.cs" id="1_dustj"] [ext_resource type="Texture2D" uid="uid://ce04nexh36uwe" path="res://art/ui/UI/icons/icon-seed-tomatoe.png" id="1_u15c2"] -[ext_resource type="PackedScene" uid="uid://gishbn0a8eke" path="res://prefabs/farm/tomato_plant.tscn" id="2_xhgqu"] [resource] script = ExtResource("1_dustj") @@ -10,5 +9,4 @@ name = "Tomato Seed" color = Color(0.135039, 0.307214, 0.333128, 1) icon = ExtResource("1_u15c2") maxStack = 20 -itemPrefab = ExtResource("2_xhgqu") metadata/_custom_type_script = "uid://cbskymrxs6ksu" diff --git a/scripts/CSharp/Common/Farming/FieldBehaviour2D.cs b/scripts/CSharp/Common/Farming/FieldBehaviour2D.cs index eea9ce8..545ec38 100644 --- a/scripts/CSharp/Common/Farming/FieldBehaviour2D.cs +++ b/scripts/CSharp/Common/Farming/FieldBehaviour2D.cs @@ -83,13 +83,11 @@ public partial class FieldBehaviour2D : Sprite2D if (item == null || PlantingPlaceholder.GetChildCount() > 0) return success; - + string prefabPath = ItemRepository.TryGetPrefabPath(item.blueprint); if (prefabPath != null) { - - // todo: Error: cannot convert value at key from string to object PackedScene prefab = ResourceLoader.Load(prefabPath, nameof(PackedScene)); Node2D plant2d = prefab.Instantiate(); PlantingPlaceholder.AddChild(plant2d); @@ -102,7 +100,6 @@ public partial class FieldBehaviour2D : Sprite2D } success = true; - } return success; diff --git a/scripts/CSharp/Common/Inventory/ItemRepository.cs b/scripts/CSharp/Common/Inventory/ItemRepository.cs index ed71183..a9b85c7 100644 --- a/scripts/CSharp/Common/Inventory/ItemRepository.cs +++ b/scripts/CSharp/Common/Inventory/ItemRepository.cs @@ -1,3 +1,4 @@ + using Godot; using Godot.Collections; diff --git a/scripts/CSharp/Common/Inventory/ItemRepository.cs.uid b/scripts/CSharp/Common/Inventory/ItemRepository.cs.uid new file mode 100644 index 0000000..29cac99 --- /dev/null +++ b/scripts/CSharp/Common/Inventory/ItemRepository.cs.uid @@ -0,0 +1 @@ +uid://oafmfqkdqewd