diff --git a/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png b/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png new file mode 100644 index 0000000..ae2b26f Binary files /dev/null and b/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png differ diff --git a/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png.import b/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png.import new file mode 100644 index 0000000..5369f26 --- /dev/null +++ b/art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dvwj5esdepda8" +path="res://.godot/imported/beetroot_seeds_icon.png-4cbd7d4aed7c86eb95b5de677325d4fe.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png" +dest_files=["res://.godot/imported/beetroot_seeds_icon.png-4cbd7d4aed7c86eb95b5de677325d4fe.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/art/farm/farming/farmobjekte/beetroot_01.png b/art/farm/farming/farmobjekte/beetroot_01.png new file mode 100644 index 0000000..276345d Binary files /dev/null and b/art/farm/farming/farmobjekte/beetroot_01.png differ diff --git a/art/farm/farming/farmobjekte/beetroot_01.png.import b/art/farm/farming/farmobjekte/beetroot_01.png.import new file mode 100644 index 0000000..e3fe595 --- /dev/null +++ b/art/farm/farming/farmobjekte/beetroot_01.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://diln6yxym4vsj" +path="res://.godot/imported/beetroot_01.png-c7d0efc83156722c5a904d189bb4c09e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/farm/farming/farmobjekte/beetroot_01.png" +dest_files=["res://.godot/imported/beetroot_01.png-c7d0efc83156722c5a904d189bb4c09e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/art/farm/farming/farmobjekte/beetroot_01.png~ b/art/farm/farming/farmobjekte/beetroot_01.png~ new file mode 100644 index 0000000..402683b Binary files /dev/null and b/art/farm/farming/farmobjekte/beetroot_01.png~ differ diff --git a/prefabs/farm/duck.tscn b/prefabs/farm/animals/duck.tscn similarity index 100% rename from prefabs/farm/duck.tscn rename to prefabs/farm/animals/duck.tscn diff --git a/prefabs/farm/beet_field.tscn b/prefabs/farm/beet_field.tscn deleted file mode 100644 index 41781fc..0000000 --- a/prefabs/farm/beet_field.tscn +++ /dev/null @@ -1,90 +0,0 @@ -[gd_scene load_steps=14 format=3 uid="uid://d4m5iy5mwqpq3"] - -[ext_resource type="PackedScene" uid="uid://cqc72e4hq6bcd" path="res://prefabs/interactions/interaction_area_2d.tscn" id="1_tp1yj"] -[ext_resource type="Script" uid="uid://bdffon388rkty" path="res://scripts/CSharp/Common/Farming/FieldBehaviour2D.cs" id="2_c6u1a"] -[ext_resource type="Material" uid="uid://blch5kdhkbj75" path="res://art/materials/simple_interactable_outline.tres" id="2_pdgar"] -[ext_resource type="Texture2D" uid="uid://cgmu3qlovdr22" path="res://art/masks/field_outline_1.png" id="3_b5av1"] -[ext_resource type="Texture2D" uid="uid://eg5ej0mtuac" path="res://art/masks/field_outline_2.png" id="4_yav45"] -[ext_resource type="Texture2D" uid="uid://djpigvoyadvjs" path="res://art/masks/field_outline_3.png" id="5_pdgar"] -[ext_resource type="Texture2D" uid="uid://c2pirgay3jfnn" path="res://art/farm/tilable grounds/böden/trockene farming erde.png" id="6_a35l4"] -[ext_resource type="Texture2D" uid="uid://ctvdxwgmfaj5c" path="res://art/farm/tilable grounds/böden/nasse farming erde.png" id="7_us3kg"] -[ext_resource type="PackedScene" uid="uid://c3hwbwo423nbm" path="res://prefabs/farm/beet_plant.tscn" id="8_tgwxi"] -[ext_resource type="Script" uid="uid://d2486x6upmwqq" path="res://scripts/GdScript/dialogic_starter.gd" id="9_b5av1"] -[ext_resource type="Script" uid="uid://dnipeibppjirs" path="res://scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs" id="10_yav45"] -[ext_resource type="Script" uid="uid://drle5aies8ye4" path="res://scripts/GdScript/dialogic_event_forward.gd" id="11_yav45"] - -[sub_resource type="CircleShape2D" id="CircleShape2D_a35l4"] -resource_local_to_scene = true -radius = 300.0 - -[node name="BaseField" type="Node2D"] - -[node name="InteractionArea2" parent="." node_paths=PackedStringArray("_spriteToOutline") instance=ExtResource("1_tp1yj")] -visible = false -z_index = 1 -scale = Vector2(2.225, 2.225) -_outlineMaterial = ExtResource("2_pdgar") -_spriteToOutline = NodePath("../FieldBehaviour/MaskedField") - -[node name="FieldBehaviour" type="Sprite2D" parent="." node_paths=PackedStringArray("_fieldSprite", "_maskSprite", "_growingCollider")] -z_index = -1 -scale = Vector2(0.9, 1) -script = ExtResource("2_c6u1a") -_fieldSprite = NodePath("MaskedField/FieldTexture") -_maskSprite = NodePath("MaskedField") -_maskTexture = Array[Texture2D]([ExtResource("3_b5av1"), ExtResource("4_yav45"), ExtResource("5_pdgar")]) -Tilled = ExtResource("6_a35l4") -Watered = ExtResource("7_us3kg") -_growingCollider = NodePath("../InteractionArea2") - -[node name="MaskedField" type="Sprite2D" parent="FieldBehaviour"] -clip_children = 1 -scale = Vector2(1.5, 1.5) -texture = ExtResource("4_yav45") - -[node name="FieldTexture" type="Sprite2D" parent="FieldBehaviour/MaskedField"] -texture = ExtResource("6_a35l4") - -[node name="BeetRoot" parent="FieldBehaviour" node_paths=PackedStringArray("_smallPlants", "_field") groups=["PlantGrowing"] instance=ExtResource("8_tgwxi")] -_smallPlants = [NodePath("SmallPlant/01"), NodePath("SmallPlant/02"), null, null] -_state = 2 -_field = NodePath("..") - -[node name="01" parent="FieldBehaviour/BeetRoot/BigPlant" index="0"] -visible = true - -[node name="CollisionShape3D" parent="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/PickupInteractionArea/Area2D" index="0"] -shape = SubResource("CircleShape2D_a35l4") - -[node name="01" parent="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/ReadyPlant" index="0"] -scale = Vector2(3, 3) - -[node name="02" parent="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/ReadyPlant" index="1"] -scale = Vector2(3, 3) - -[node name="03" parent="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/ReadyPlant" index="2"] -scale = Vector2(3, 3) - -[node name="04" parent="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/ReadyPlant" index="3"] -scale = Vector2(3, 3) - -[node name="dialogic-starter" type="Node2D" parent="."] -script = ExtResource("9_b5av1") - -[node name="DialogicOverlay" type="Node2D" parent="dialogic-starter"] -script = ExtResource("10_yav45") -_timelinesToPlay = PackedStringArray("talk_to_plant") -_startOnReady = false - -[node name="DialogicEventListener" type="Node" parent="dialogic-starter"] -script = ExtResource("11_yav45") -eventName = "MagicWord" - -[connection signal="Interacted" from="InteractionArea2" to="dialogic-starter/DialogicOverlay" method="ToggleDialogue"] -[connection signal="Interacted" from="InteractionArea2" to="dialogic-starter/DialogicEventListener" method="_register"] -[connection signal="Dialogue" from="dialogic-starter/DialogicOverlay" to="dialogic-starter" method="open"] -[connection signal="dialogicEventTriggered" from="dialogic-starter/DialogicEventListener" to="FieldBehaviour/BeetRoot" method="SayMagicWord"] - -[editable path="FieldBehaviour/BeetRoot"] -[editable path="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem"] -[editable path="FieldBehaviour/BeetRoot/ReadyPlantInventoryItem/PickupInteractionArea"] diff --git a/prefabs/farm/beet_plant.tscn b/prefabs/farm/beet_plant.tscn deleted file mode 100644 index 9ab0020..0000000 --- a/prefabs/farm/beet_plant.tscn +++ /dev/null @@ -1,207 +0,0 @@ -[gd_scene load_steps=10 format=3 uid="uid://c3hwbwo423nbm"] - -[ext_resource type="Script" uid="uid://cms357f23fmfy" path="res://scripts/CSharp/Common/Farming/PlantBehaviour2D.cs" id="1_0kfos"] -[ext_resource type="Texture2D" uid="uid://xtci0n8tquc0" path="res://art/farm/farming/farmobjekte/beetroot_00.png" id="2_rvwu0"] -[ext_resource type="Shader" uid="uid://braevmqauoek7" path="res://shader/swaying_plant.gdshader" id="3_up8td"] -[ext_resource type="PackedScene" uid="uid://cqc72e4hq6bcd" path="res://prefabs/interactions/interaction_area_2d.tscn" id="4_cfgyx"] -[ext_resource type="PackedScene" uid="uid://dpbbroif2tnil" path="res://prefabs/interactions/generic_item_on_ground_2d.tscn" id="5_25lcb"] -[ext_resource type="Resource" uid="uid://blr8tine5m0ma" path="res://resources/items/tomato.tres" id="6_aml5p"] -[ext_resource type="Texture2D" uid="uid://bleimj6jr1jka" path="res://art/general/rectangle.png" id="7_rvwu0"] - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_u4cty"] -shader = ExtResource("3_up8td") -shader_parameter/speed = 3.0 -shader_parameter/minStrength = 0.05 -shader_parameter/maxStrength = 0.36 -shader_parameter/strengthScale = 100.0 -shader_parameter/interval = 3.5 -shader_parameter/detail = 1.0 -shader_parameter/distortion = 0.0 -shader_parameter/heightOffset = 0.635 -shader_parameter/offset = 0.0 - -[sub_resource type="CircleShape2D" id="CircleShape2D_rvwu0"] -resource_local_to_scene = true -radius = 300.0 - -[node name="BeetRoot" type="Node2D" node_paths=PackedStringArray("_seeds", "_smallPlants", "_bigPlants", "_readyPlants", "_harvestablePlant", "_magicEffect")] -z_index = 1 -y_sort_enabled = true -script = ExtResource("1_0kfos") -_seeds = [NodePath("Seeds/BeetSeet"), NodePath("Seeds/BeetSeet2"), NodePath("Seeds/BeetSeet3")] -_smallPlants = [NodePath("SmallPlant/01"), NodePath("SmallPlant/02"), null, null] -_bigPlants = [NodePath("BigPlant/01"), NodePath("BigPlant/02"), NodePath("BigPlant/03"), NodePath("BigPlant/04")] -_readyPlants = [NodePath("ReadyPlantInventoryItem/ReadyPlant/01"), NodePath("ReadyPlantInventoryItem/ReadyPlant/02"), NodePath("ReadyPlantInventoryItem/ReadyPlant/03"), NodePath("ReadyPlantInventoryItem/ReadyPlant/04")] -_harvestablePlant = NodePath("ReadyPlantInventoryItem") -_magicEffect = NodePath("magic vfx") - -[node name="Seeds" type="Node2D" parent="."] -position = Vector2(0, 0.5) - -[node name="BeetSeet" type="Sprite2D" parent="Seeds"] -visible = false -y_sort_enabled = true -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -flip_v = true -region_enabled = true -region_rect = Rect2(166, 289, 28, 38) - -[node name="BeetSeet2" type="Sprite2D" parent="Seeds"] -visible = false -y_sort_enabled = true -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -flip_v = true -region_enabled = true -region_rect = Rect2(166, 289, 28, 38) - -[node name="BeetSeet3" type="Sprite2D" parent="Seeds"] -visible = false -y_sort_enabled = true -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -flip_v = true -region_enabled = true -region_rect = Rect2(243, 207, 35, 69) - -[node name="SmallPlant" type="Node2D" parent="."] -position = Vector2(0, 0.5) - -[node name="01" type="Sprite2D" parent="SmallPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(37, 178, 72, 116) - -[node name="02" type="Sprite2D" parent="SmallPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(313, 179, 73, 115) - -[node name="BigPlant" type="Node2D" parent="."] -position = Vector2(0, 2) - -[node name="01" type="Sprite2D" parent="BigPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(6, 5, 136, 151) - -[node name="02" type="Sprite2D" parent="BigPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(148, 58, 111, 140) - -[node name="03" type="Sprite2D" parent="BigPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(264, 4, 131, 152) - -[node name="04" type="Sprite2D" parent="BigPlant"] -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -scale = Vector2(2, 2) -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(18, 311, 129, 142) - -[node name="InteractionArea" parent="." instance=ExtResource("4_cfgyx")] -position = Vector2(0, 2.3) -_useOutline = false -_useSprite = false - -[node name="ReadyPlantInventoryItem" parent="." instance=ExtResource("5_25lcb")] -position = Vector2(0, 2.3) -IsActive = false - -[node name="SpawnWithItem" parent="ReadyPlantInventoryItem" index="0"] -_blueprint = ExtResource("6_aml5p") - -[node name="ItemLabel" parent="ReadyPlantInventoryItem" index="1"] -visible = false - -[node name="PickupErrorLabel" parent="ReadyPlantInventoryItem" index="2"] -visible = false - -[node name="CollisionShape3D" parent="ReadyPlantInventoryItem/PickupInteractionArea/Area2D" index="0"] -shape = SubResource("CircleShape2D_rvwu0") - -[node name="Icon" parent="ReadyPlantInventoryItem" index="4"] -visible = false - -[node name="ReadyPlant" type="Node2D" parent="ReadyPlantInventoryItem"] - -[node name="01" type="Sprite2D" parent="ReadyPlantInventoryItem/ReadyPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(18, 311, 129, 142) - -[node name="02" type="Sprite2D" parent="ReadyPlantInventoryItem/ReadyPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(6, 5, 136, 151) - -[node name="03" type="Sprite2D" parent="ReadyPlantInventoryItem/ReadyPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(264, 4, 131, 152) - -[node name="04" type="Sprite2D" parent="ReadyPlantInventoryItem/ReadyPlant"] -visible = false -y_sort_enabled = true -material = SubResource("ShaderMaterial_u4cty") -texture = ExtResource("2_rvwu0") -region_enabled = true -region_rect = Rect2(148, 58, 111, 140) - -[node name="magic vfx" type="CPUParticles2D" parent="."] -position = Vector2(-133, -347) -rotation = -0.333807 -emitting = false -amount = 20 -texture = ExtResource("7_rvwu0") -lifetime = 0.5 -randomness = 1.0 -local_coords = true -draw_order = 1 -emission_shape = 2 -emission_sphere_radius = 128.0 -linear_accel_min = 44.07 -linear_accel_max = 78.81 -scale_amount_min = 0.01 -scale_amount_max = 0.1 -color = Color(0.400601, 0.62444, 0.791217, 1) -hue_variation_max = 0.4 - -[connection signal="Interacted" from="InteractionArea" to="." method="Grow"] - -[editable path="ReadyPlantInventoryItem"] -[editable path="ReadyPlantInventoryItem/PickupInteractionArea"] diff --git a/prefabs/farm/tomato_plant.tscn b/prefabs/farm/plants/base_plant.tscn similarity index 96% rename from prefabs/farm/tomato_plant.tscn rename to prefabs/farm/plants/base_plant.tscn index 926cda0..ec854c3 100644 --- a/prefabs/farm/tomato_plant.tscn +++ b/prefabs/farm/plants/base_plant.tscn @@ -34,7 +34,7 @@ radius = 300.0 z_index = 1 y_sort_enabled = true script = ExtResource("1_66p1c") -_seeds = [NodePath("Seeds/TomatoSeed"), NodePath("Seeds/TomatoSeed2"), NodePath("Seeds/TomatoSeed3")] +_seeds = [NodePath("Seeds/Seed1"), NodePath("Seeds/Seed2"), NodePath("Seeds/Seed3")] _smallPlants = [NodePath("SmallPlant/01"), NodePath("SmallPlant/02"), NodePath("SmallPlant/03"), NodePath("SmallPlant/04")] _bigPlants = [NodePath("BigPlant/01"), NodePath("BigPlant/02"), NodePath("BigPlant/03"), NodePath("BigPlant/04")] _readyPlants = [NodePath("ReadyPlantInventoryItem/ReadyPlant/01"), NodePath("ReadyPlantInventoryItem/ReadyPlant/02"), NodePath("ReadyPlantInventoryItem/ReadyPlant/03"), NodePath("ReadyPlantInventoryItem/ReadyPlant/04")] @@ -45,7 +45,7 @@ _magicWordNeeded = false [node name="Seeds" type="Node2D" parent="."] position = Vector2(0, 0.5) -[node name="TomatoSeed" type="Sprite2D" parent="Seeds"] +[node name="Seed1" type="Sprite2D" parent="Seeds"] visible = false y_sort_enabled = true texture = ExtResource("2_vjw4j") @@ -53,7 +53,7 @@ flip_v = true region_enabled = true region_rect = Rect2(-2, 15, 85, 81) -[node name="TomatoSeed2" type="Sprite2D" parent="Seeds"] +[node name="Seed2" type="Sprite2D" parent="Seeds"] visible = false y_sort_enabled = true texture = ExtResource("2_vjw4j") @@ -61,7 +61,7 @@ flip_v = true region_enabled = true region_rect = Rect2(15, 177, 84, 108) -[node name="TomatoSeed3" type="Sprite2D" parent="Seeds"] +[node name="Seed3" type="Sprite2D" parent="Seeds"] visible = false y_sort_enabled = true texture = ExtResource("2_vjw4j") diff --git a/prefabs/farm/plants/beet_plant.tscn b/prefabs/farm/plants/beet_plant.tscn new file mode 100644 index 0000000..8868d4a --- /dev/null +++ b/prefabs/farm/plants/beet_plant.tscn @@ -0,0 +1,121 @@ +[gd_scene load_steps=7 format=3 uid="uid://dp8ielst8et4c"] + +[ext_resource type="PackedScene" uid="uid://gishbn0a8eke" path="res://prefabs/farm/plants/base_plant.tscn" id="1_y42lq"] +[ext_resource type="Texture2D" uid="uid://diln6yxym4vsj" path="res://art/farm/farming/farmobjekte/beetroot_01.png" id="3_lixhh"] +[ext_resource type="Resource" uid="uid://0mnsr4anoaiq" path="res://resources/items/beet.tres" id="3_xrha8"] +[ext_resource type="Texture2D" uid="uid://b5ade1s2ijunu" path="res://art/farm/farming/farmobjekte/beetroot/beetroot_icon.png" id="4_betqv"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_dxqox"] +resource_local_to_scene = true +radius = 300.0 + +[sub_resource type="CircleShape2D" id="CircleShape2D_4fw1t"] +resource_local_to_scene = true +radius = 300.0 + +[node name="BeetPlant" instance=ExtResource("1_y42lq")] + +[node name="Seed1" parent="Seeds" index="0"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 40) +region_rect = Rect2(204, 213, 59, 55) + +[node name="Seed2" parent="Seeds" index="1"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 40) +region_rect = Rect2(206, 213, 56, 60) + +[node name="Seed3" parent="Seeds" index="2"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 40) +region_rect = Rect2(204, 213, 54, 57) + +[node name="SmallPlant" parent="." index="1"] +scale = Vector2(2, 2) + +[node name="01" parent="SmallPlant" index="0"] +texture = ExtResource("3_lixhh") +offset = Vector2(0, 20) +region_rect = Rect2(307, 179, 75, 87) + +[node name="02" parent="SmallPlant" index="1"] +texture = ExtResource("3_lixhh") +offset = Vector2(0, 20) +region_rect = Rect2(399, 222, 24, 27) + +[node name="03" parent="SmallPlant" index="2"] +texture = ExtResource("3_lixhh") +offset = Vector2(0, 20) +region_rect = Rect2(510, 210, 40, 57) + +[node name="04" parent="SmallPlant" index="3"] +texture = ExtResource("3_lixhh") +offset = Vector2(0, 20) +region_rect = Rect2(581, 183, 79, 81) + +[node name="01" parent="BigPlant" index="0"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 150) +region_rect = Rect2(28, 27, 150, 123) + +[node name="02" parent="BigPlant" index="1"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 150) +region_rect = Rect2(179, 28, 134, 115) + +[node name="03" parent="BigPlant" index="2"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 150) +region_rect = Rect2(312, 27, 133, 121) + +[node name="04" parent="BigPlant" index="3"] +scale = Vector2(2, 2) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 150) +region_rect = Rect2(458, 31, 118, 112) + +[node name="CollisionShape3D" parent="GrowingInteractionArea/Area2D" index="0"] +shape = SubResource("CircleShape2D_dxqox") + +[node name="SpawnWithItem" parent="ReadyPlantInventoryItem" index="0"] +_blueprint = ExtResource("3_xrha8") + +[node name="CollisionShape3D" parent="ReadyPlantInventoryItem/PickupInteractionArea/Area2D" index="0"] +shape = SubResource("CircleShape2D_4fw1t") + +[node name="Icon" parent="ReadyPlantInventoryItem" index="4"] +texture = ExtResource("4_betqv") + +[node name="01" parent="ReadyPlantInventoryItem/ReadyPlant" index="0"] +scale = Vector2(4, 4) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 80) +region_rect = Rect2(582, 19, 142, 126) + +[node name="02" parent="ReadyPlantInventoryItem/ReadyPlant" index="1"] +scale = Vector2(4, 4) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 80) +region_rect = Rect2(311, 32, 136, 117) + +[node name="03" parent="ReadyPlantInventoryItem/ReadyPlant" index="2"] +scale = Vector2(4, 4) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 80) +region_rect = Rect2(175, 28, 136, 117) + +[node name="04" parent="ReadyPlantInventoryItem/ReadyPlant" index="3"] +scale = Vector2(4, 4) +texture = ExtResource("3_lixhh") +offset = Vector2(0, 80) +region_rect = Rect2(26, 24, 147, 123) + +[editable path="GrowingInteractionArea"] +[editable path="ReadyPlantInventoryItem"] +[editable path="ReadyPlantInventoryItem/PickupInteractionArea"] diff --git a/prefabs/farm/plants/tomato_plant.tscn b/prefabs/farm/plants/tomato_plant.tscn new file mode 100644 index 0000000..63205fa --- /dev/null +++ b/prefabs/farm/plants/tomato_plant.tscn @@ -0,0 +1,23 @@ +[gd_scene load_steps=4 format=3 uid="uid://n8tv8gafsrfo"] + +[ext_resource type="PackedScene" uid="uid://gishbn0a8eke" path="res://prefabs/farm/plants/base_plant.tscn" id="1_ooshk"] + +[sub_resource type="CircleShape2D" id="CircleShape2D_on0x0"] +resource_local_to_scene = true +radius = 300.0 + +[sub_resource type="CircleShape2D" id="CircleShape2D_gkatd"] +resource_local_to_scene = true +radius = 300.0 + +[node name="BasePlant" instance=ExtResource("1_ooshk")] + +[node name="CollisionShape3D" parent="GrowingInteractionArea/Area2D" index="0"] +shape = SubResource("CircleShape2D_on0x0") + +[node name="CollisionShape3D" parent="ReadyPlantInventoryItem/PickupInteractionArea/Area2D" index="0"] +shape = SubResource("CircleShape2D_gkatd") + +[editable path="GrowingInteractionArea"] +[editable path="ReadyPlantInventoryItem"] +[editable path="ReadyPlantInventoryItem/PickupInteractionArea"] diff --git a/project.godot b/project.godot index 9731e15..2b2c401 100644 --- a/project.godot +++ b/project.godot @@ -137,6 +137,7 @@ directories/tres_directory={ "babushka_dialogue_style": "res://addons/babushkahelpers/babushka_dialogue_style.tres", "beet": "res://resources/items/beet.tres", "beetRoot": "res://resources/quests/beetRoot.tres", +"beet_seed": "res://resources/items/beet_seed.tres", "choice_panel_focus": "res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Choices/choice_panel_focus.tres", "choice_panel_hover": "res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Choices/choice_panel_hover.tres", "choice_panel_normal": "res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Choices/choice_panel_normal.tres", diff --git a/resources/itemRepository.tres b/resources/itemRepository.tres index ad034db..f9e2781 100644 --- a/resources/itemRepository.tres +++ b/resources/itemRepository.tres @@ -1,11 +1,13 @@ -[gd_resource type="Resource" script_class="ItemRepository" load_steps=3 format=3 uid="uid://d284vxftxhym0"] +[gd_resource type="Resource" script_class="ItemRepository" load_steps=4 format=3 uid="uid://d284vxftxhym0"] [ext_resource type="Resource" uid="uid://d1uuxp1lp4aro" path="res://resources/items/tomato_seed.tres" id="1_67bbe"] [ext_resource type="Script" uid="uid://oafmfqkdqewd" path="res://scripts/CSharp/Common/Inventory/ItemRepository.cs" id="1_ew4x0"] +[ext_resource type="Resource" uid="uid://duq7tshxv6uhp" path="res://resources/items/beet_seed.tres" id="2_67bbe"] [resource] script = ExtResource("1_ew4x0") itemInventoryRepository = Dictionary[Object, String]({ -ExtResource("1_67bbe"): "res://prefabs/farm/tomato_plant.tscn" +ExtResource("1_67bbe"): "res://prefabs/farm/plants/tomato_plant.tscn", +ExtResource("2_67bbe"): "res://prefabs/farm/plants/beet_plant.tscn" }) metadata/_custom_type_script = "uid://oafmfqkdqewd" diff --git a/resources/items/beet.tres b/resources/items/beet.tres index 4526b26..b5d871a 100644 --- a/resources/items/beet.tres +++ b/resources/items/beet.tres @@ -5,7 +5,7 @@ [resource] script = ExtResource("2_5t85d") -name = "Tomato" +name = "Beet" color = Color(0.451671, 0.0462732, 0.396459, 1) icon = ExtResource("1_wddc8") maxStack = 20 diff --git a/resources/items/beet_seed.tres b/resources/items/beet_seed.tres new file mode 100644 index 0000000..a22efad --- /dev/null +++ b/resources/items/beet_seed.tres @@ -0,0 +1,12 @@ +[gd_resource type="Resource" script_class="ItemResource" load_steps=3 format=3 uid="uid://duq7tshxv6uhp"] + +[ext_resource type="Texture2D" uid="uid://dvwj5esdepda8" path="res://art/farm/farming/farmobjekte/beetroot/beetroot_seeds_icon.png" id="1_umigy"] +[ext_resource type="Script" uid="uid://cbskymrxs6ksu" path="res://scripts/CSharp/Common/Inventory/ItemResource.cs" id="2_hrv3l"] + +[resource] +script = ExtResource("2_hrv3l") +name = "Beet Seeds" +color = Color(0.451671, 0.0462732, 0.396459, 1) +icon = ExtResource("1_umigy") +maxStack = 20 +metadata/_custom_type_script = "uid://cbskymrxs6ksu" diff --git a/scenes/Babushka_scene_farm_outside_2d.tscn b/scenes/Babushka_scene_farm_outside_2d.tscn index 1f33d95..381bb0d 100644 --- a/scenes/Babushka_scene_farm_outside_2d.tscn +++ b/scenes/Babushka_scene_farm_outside_2d.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=114 format=3 uid="uid://gigb28qk8t12"] +[gd_scene load_steps=115 format=3 uid="uid://gigb28qk8t12"] [ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="1_7wfwe"] [ext_resource type="Texture2D" uid="uid://8sr11ex30n0m" path="res://art/mockups/Kenney_Backgrounds/Samples/uncolored_hills.png" id="2_7b2ri"] @@ -38,6 +38,7 @@ [ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="34_e5b7x"] [ext_resource type="Resource" uid="uid://d1uuxp1lp4aro" path="res://resources/items/tomato_seed.tres" id="35_64mdn"] [ext_resource type="Texture2D" uid="uid://65e44yde224q" path="res://art/farm/Babushka_house_01.png" id="36_e5b7x"] +[ext_resource type="Resource" uid="uid://duq7tshxv6uhp" path="res://resources/items/beet_seed.tres" id="36_fv1t2"] [ext_resource type="AudioStream" uid="uid://cfqg50am0swb7" path="res://audio/Music/Farming_90BPM_69Bars_Loop.wav" id="37_8ey8m"] [ext_resource type="AudioStream" uid="uid://dku1rq5cocisg" path="res://audio/Music/Farming_90BPM_69Bars.wav" id="37_di1ed"] [ext_resource type="Shader" uid="uid://braevmqauoek7" path="res://shader/swaying_plant.gdshader" id="37_taxvr"] @@ -64,7 +65,7 @@ [ext_resource type="Script" uid="uid://dnipeibppjirs" path="res://scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs" id="51_uxa2m"] [ext_resource type="Script" uid="uid://d2486x6upmwqq" path="res://scripts/GdScript/dialogic_starter.gd" id="52_lwk6t"] [ext_resource type="PackedScene" uid="uid://sbf12hin4kes" path="res://prefabs/Interactables/trash_object.tscn" id="53_ycj14"] -[ext_resource type="PackedScene" uid="uid://muuxxgvx33fp" path="res://prefabs/farm/duck.tscn" id="62_i36hd"] +[ext_resource type="PackedScene" uid="uid://muuxxgvx33fp" path="res://prefabs/farm/animals/duck.tscn" id="62_i36hd"] [ext_resource type="Script" uid="uid://cldtt4atgymm5" path="res://scripts/CSharp/Common/Quest/QuestTrigger.cs" id="66_2065p"] [ext_resource type="Resource" uid="uid://cm8kftow8br00" path="res://resources/quests/demo/1_talk_yeli_1.tres" id="67_tm0yg"] [ext_resource type="Script" uid="uid://c741nyedy26mx" path="res://scripts/CSharp/Common/QuestBehaviour/DetectInventoryContains.cs" id="68_hux6i"] @@ -1103,6 +1104,19 @@ shape = SubResource("CircleShape2D_tm0yg") [node name="Icon" parent="YSorted/SeedPickup" index="4"] scale = Vector2(1, 1) +[node name="SeedPickup2" parent="YSorted" instance=ExtResource("25_hukxv")] +position = Vector2(10892, 2469) +_finiteSupply = 3 + +[node name="SpawnWithItem" parent="YSorted/SeedPickup2" index="0"] +_blueprint = ExtResource("36_fv1t2") + +[node name="CollisionShape3D" parent="YSorted/SeedPickup2/PickupInteractionArea/Area2D" index="0"] +shape = SubResource("CircleShape2D_tm0yg") + +[node name="Icon" parent="YSorted/SeedPickup2" index="4"] +scale = Vector2(1, 1) + [node name="Farm visuals" type="Node2D" parent="YSorted"] position = Vector2(-60, 122) @@ -2371,6 +2385,7 @@ timeline = "quest2_tomatoes_end" [connection signal="SuccessfulPickUp" from="YSorted/CanGenericPickup" to="YSorted/Vesna" method="HandlePickUp"] [connection signal="SuccessfulPickUp" from="YSorted/RakeGenericPickup" to="YSorted/Vesna" method="HandlePickUp"] [connection signal="SuccessfulPickUp" from="YSorted/SeedPickup" to="YSorted/Vesna" method="HandlePickUp"] +[connection signal="SuccessfulPickUp" from="YSorted/SeedPickup2" to="YSorted/Vesna" method="HandlePickUp"] [connection signal="InteractedTool" from="YSorted/Farm visuals/Static/EnterHouseInteraction" to="." method="LoadSceneAtIndex"] [connection signal="FieldCreated" from="YSorted/Farm visuals/FieldParent" to="Audio/SFX/Farming SFX" method="PlayOneShot"] [connection signal="input_event" from="YSorted/Farm visuals/FieldParent/Area2D" to="YSorted/Vesna/FarmingControls" method="InputEventPressedOn"] @@ -2394,4 +2409,6 @@ timeline = "quest2_tomatoes_end" [editable path="YSorted/RakeGenericPickup/PickupInteractionArea"] [editable path="YSorted/SeedPickup"] [editable path="YSorted/SeedPickup/PickupInteractionArea"] +[editable path="YSorted/SeedPickup2"] +[editable path="YSorted/SeedPickup2/PickupInteractionArea"] [editable path="CanvasLayer"] diff --git a/scenes/Babushka_scene_farm_outside_2d_ducksCollected.tscn b/scenes/Babushka_scene_farm_outside_2d_ducksCollected.tscn index 69526eb..08078ab 100644 --- a/scenes/Babushka_scene_farm_outside_2d_ducksCollected.tscn +++ b/scenes/Babushka_scene_farm_outside_2d_ducksCollected.tscn @@ -48,7 +48,7 @@ [ext_resource type="Script" uid="uid://dhxtdhfqx3bte" path="res://scripts/CSharp/Common/Farming/FieldService2D.cs" id="47_o4ch6"] [ext_resource type="Texture2D" uid="uid://blb3agipyxnal" path="res://art/farm/farming/farmobjekte/zaun/fence_door.png" id="48_hknn3"] [ext_resource type="Script" uid="uid://l6iq8rpym5io" path="res://scripts/CSharp/Common/Util/Counter.cs" id="49_3bowf"] -[ext_resource type="PackedScene" uid="uid://muuxxgvx33fp" path="res://prefabs/farm/duck.tscn" id="50_j7vsa"] +[ext_resource type="PackedScene" uid="uid://muuxxgvx33fp" path="res://prefabs/farm/animals/duck.tscn" id="50_j7vsa"] [ext_resource type="Script" uid="uid://dnipeibppjirs" path="res://scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs" id="51_v78io"] [ext_resource type="Script" uid="uid://d2486x6upmwqq" path="res://scripts/GdScript/dialogic_starter.gd" id="52_qgfjh"] [ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="53_v4u68"]