Project cleanup: Removed 3D scripts and scenes from project. Also renamed and moved some minor stuff.
parent
1f17cca62d
commit
c6ec99e87a
|
Before Width: | Height: | Size: 1.2 MiB |
@ -1,35 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b3uty8l1jdrjk"
|
||||
path.s3tc="res://.godot/imported/sky_24_2k.png-6eebd1ef02e0e52a98645f3d1879ab9e.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/skyboxes/sky_24_2k.png"
|
||||
dest_files=["res://.godot/imported/sky_24_2k.png-6eebd1ef02e0e52a98645f3d1879ab9e.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
|
Before Width: | Height: | Size: 627 KiB |
@ -1,35 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d1gij124516fl"
|
||||
path.s3tc="res://.godot/imported/sky_29_2k.png-a941c0e080f4b37a36968dc654dd2c14.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/skyboxes/sky_29_2k.png"
|
||||
dest_files=["res://.godot/imported/sky_29_2k.png-a941c0e080f4b37a36968dc654dd2c14.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
|
Before Width: | Height: | Size: 993 KiB |
@ -1,35 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d2osodaofb2ya"
|
||||
path.s3tc="res://.godot/imported/sky_34_2k.png-9f6287d0381f17cc068eeb4166c83bd3.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/skyboxes/sky_34_2k.png"
|
||||
dest_files=["res://.godot/imported/sky_34_2k.png-9f6287d0381f17cc068eeb4166c83bd3.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
|
Before Width: | Height: | Size: 571 KiB |
@ -1,35 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://df87h8he6c12t"
|
||||
path.s3tc="res://.godot/imported/sky_37_2k.png-8ba5cf7cc018e8a0a90a73aefe633c16.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/skyboxes/sky_37_2k.png"
|
||||
dest_files=["res://.godot/imported/sky_37_2k.png-8ba5cf7cc018e8a0a90a73aefe633c16.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
|
Before Width: | Height: | Size: 728 KiB |
@ -1,35 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d11xu6vq7jwdq"
|
||||
path.s3tc="res://.godot/imported/sky_41_2k.png-ed5d885654e2b3558ec6ad4d08125f90.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/skyboxes/sky_41_2k.png"
|
||||
dest_files=["res://.godot/imported/sky_41_2k.png-ed5d885654e2b3558ec6ad4d08125f90.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
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=0
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,38 +0,0 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://biwd3jj65qrlh"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c2pirgay3jfnn" path="res://art/farm/tilable grounds/böden/trockene farming erde.png" id="1_2cisk"]
|
||||
[ext_resource type="Script" uid="uid://histmmyi1wr" path="res://scripts/CSharp/Common/Farming/FieldBehaviour.cs" id="2_u7egi"]
|
||||
[ext_resource type="Texture2D" uid="uid://ctvdxwgmfaj5c" path="res://art/farm/tilable grounds/böden/nasse farming erde.png" id="4_lsseu"]
|
||||
[ext_resource type="PackedScene" uid="uid://bjhj1wa5olwcu" path="res://prefabs/farm/base_plant.tscn" id="4_u7egi"]
|
||||
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="4_xc4m0"]
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_u7egi"]
|
||||
resource_local_to_scene = true
|
||||
radius = 2.0
|
||||
|
||||
[node name="BaseField" type="Node3D"]
|
||||
|
||||
[node name="InteractionArea" parent="." instance=ExtResource("4_xc4m0")]
|
||||
transform = Transform3D(0.939693, -0.34202, 0, 0.34202, 0.939693, 0, 0, 0, 1, 0.00334358, -0.3811, -0.120426)
|
||||
_showLabel = false
|
||||
|
||||
[node name="CollisionShape3D" parent="InteractionArea/Area3D" index="0"]
|
||||
shape = SubResource("SphereShape3D_u7egi")
|
||||
|
||||
[node name="FieldBehaviour" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(0.4, 0, 0, 0, -1.74846e-08, -0.4, 0, 0.4, -1.74846e-08, 0, 0, 0)
|
||||
pixel_size = 0.004
|
||||
script = ExtResource("2_u7egi")
|
||||
Tilled = ExtResource("1_2cisk")
|
||||
Watered = ExtResource("4_lsseu")
|
||||
FieldState = 1
|
||||
metadata/_custom_type_script = "uid://histmmyi1wr"
|
||||
|
||||
[node name="BasePlant" parent="FieldBehaviour" node_paths=PackedStringArray("_seeds", "_smallPlants", "_bigPlants", "_readyPlants") instance=ExtResource("4_u7egi")]
|
||||
transform = Transform3D(0.5, 0, 0, 0, -2.18557e-08, 0.5, 0, -0.5, -2.18557e-08, 0, 0, 0)
|
||||
_seeds = [null, null, null]
|
||||
_smallPlants = [null, null, null, null]
|
||||
_bigPlants = [null, null, null, null]
|
||||
_readyPlants = [null, null, null, null]
|
||||
|
||||
[editable path="InteractionArea"]
|
||||
@ -1,170 +0,0 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://bjhj1wa5olwcu"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://yfnjmuuxs3oq" path="res://scripts/CSharp/Common/Farming/PlantBehaviour.cs" id="1_0sfu3"]
|
||||
[ext_resource type="Texture2D" uid="uid://dtr4uga5uspg" path="res://art/farm/farming/farmobjekte/tomaten/tomaten baby.png" id="2_l7215"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2gu6ur2xc7s4" path="res://art/farm/farming/farmobjekte/tomaten/tomaten blume.png" id="3_g3ydi"]
|
||||
[ext_resource type="Texture2D" uid="uid://cnwd3mb3jnuxm" path="res://art/farm/farming/farmobjekte/tomaten/teen adulte tomaten.png" id="4_7hsvc"]
|
||||
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="5_n6ufi"]
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_l3nrf"]
|
||||
resource_local_to_scene = true
|
||||
radius = 2.0
|
||||
|
||||
[node name="BasePlant" type="Node3D" node_paths=PackedStringArray("_seeds", "_smallPlants", "_bigPlants", "_readyPlants")]
|
||||
script = ExtResource("1_0sfu3")
|
||||
_seeds = [NodePath("Seeds/TomatoSeed"), NodePath("Seeds/TomatoSeed2"), NodePath("Seeds/TomatoSeed3")]
|
||||
_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("ReadyPlant/01"), NodePath("ReadyPlant/02"), NodePath("ReadyPlant/03"), NodePath("ReadyPlant/04")]
|
||||
|
||||
[node name="Seeds" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||
|
||||
[node name="TomatoSeed" type="Sprite3D" parent="Seeds"]
|
||||
visible = false
|
||||
flip_v = true
|
||||
billboard = 1
|
||||
render_priority = 2
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(-2, 15, 85, 81)
|
||||
|
||||
[node name="TomatoSeed2" type="Sprite3D" parent="Seeds"]
|
||||
visible = false
|
||||
flip_v = true
|
||||
billboard = 1
|
||||
render_priority = 2
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(15, 177, 84, 108)
|
||||
|
||||
[node name="TomatoSeed3" type="Sprite3D" parent="Seeds"]
|
||||
visible = false
|
||||
flip_v = true
|
||||
billboard = 1
|
||||
render_priority = 2
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(3, 337, 85, 82)
|
||||
|
||||
[node name="SmallPlant" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||
|
||||
[node name="01" type="Sprite3D" parent="SmallPlant"]
|
||||
visible = false
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(203, 1, 128, 164)
|
||||
|
||||
[node name="02" type="Sprite3D" parent="SmallPlant"]
|
||||
visible = false
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(218, 204, 112, 130)
|
||||
|
||||
[node name="03" type="Sprite3D" parent="SmallPlant"]
|
||||
visible = false
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(224, 399, 105, 105)
|
||||
|
||||
[node name="04" type="Sprite3D" parent="SmallPlant"]
|
||||
visible = false
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("2_l7215")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(228, 600, 85, 92)
|
||||
|
||||
[node name="BigPlant" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
|
||||
|
||||
[node name="01" type="Sprite3D" parent="BigPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("3_g3ydi")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(-8, 1, 498, 682)
|
||||
|
||||
[node name="02" type="Sprite3D" parent="BigPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("3_g3ydi")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(575, 82, 516, 591)
|
||||
|
||||
[node name="03" type="Sprite3D" parent="BigPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("3_g3ydi")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(-25, 694, 521, 687)
|
||||
|
||||
[node name="04" type="Sprite3D" parent="BigPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("3_g3ydi")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(546, 697, 535, 687)
|
||||
|
||||
[node name="ReadyPlant" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.3, 0)
|
||||
|
||||
[node name="01" type="Sprite3D" parent="ReadyPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("4_7hsvc")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(399, 3, 679, 808)
|
||||
|
||||
[node name="02" type="Sprite3D" parent="ReadyPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("4_7hsvc")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1077, 109, 633, 695)
|
||||
|
||||
[node name="03" type="Sprite3D" parent="ReadyPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("4_7hsvc")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(415, 838, 639, 817)
|
||||
|
||||
[node name="04" type="Sprite3D" parent="ReadyPlant"]
|
||||
visible = false
|
||||
pixel_size = 0.007
|
||||
billboard = 1
|
||||
render_priority = 3
|
||||
texture = ExtResource("4_7hsvc")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1167, 863, 528, 785)
|
||||
|
||||
[node name="InteractionArea" parent="." instance=ExtResource("5_n6ufi")]
|
||||
|
||||
[node name="CollisionShape3D" parent="InteractionArea/Area3D" index="0"]
|
||||
shape = SubResource("SphereShape3D_l3nrf")
|
||||
|
||||
[connection signal="Interacted" from="InteractionArea" to="." method="Grow"]
|
||||
|
||||
[editable path="InteractionArea"]
|
||||
@ -1,8 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bqhnejufg5ei2"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://csig0r8rffflt" path="res://art/farm/farming/farmobjekte/zaun/fence part end part.png" id="1_qau34"]
|
||||
|
||||
[node name="fence_part_01" type="Sprite3D"]
|
||||
offset = Vector2(0, 300)
|
||||
pixel_size = 0.005
|
||||
texture = ExtResource("1_qau34")
|
||||
@ -1,8 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cxceu5dgq3akw"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://3ed3dgq3irn2" path="res://art/farm/farming/farmobjekte/zaun/tilable fence end part2.png" id="1_uxygd"]
|
||||
|
||||
[node name="fence_part_02" type="Sprite3D"]
|
||||
offset = Vector2(0, 300)
|
||||
pixel_size = 0.005
|
||||
texture = ExtResource("1_uxygd")
|
||||
@ -1,8 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cm5oekefe6ct3"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://btea6eyucsyxj" path="res://art/farm/farming/farmobjekte/zaun/tilable fence middle part.png" id="1_rucex"]
|
||||
|
||||
[node name="fence_part_03" type="Sprite3D"]
|
||||
offset = Vector2(0, 300)
|
||||
pixel_size = 0.005
|
||||
texture = ExtResource("1_rucex")
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bg7nyvbojnrvr"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dldk8n51ag8fh" path="res://art/nature/baum märz 2025/backtreebois team brandon.png" id="1_d1wks"]
|
||||
|
||||
[node name="forest_tree_01" type="Sprite3D"]
|
||||
offset = Vector2(0, 600)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_d1wks")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(9, 2, 885, 1366)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://kbc6pku0nxxp"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dldk8n51ag8fh" path="res://art/nature/baum märz 2025/backtreebois team brandon.png" id="1_ajmtd"]
|
||||
|
||||
[node name="forest_tree_02" type="Sprite3D"]
|
||||
offset = Vector2(0, 500)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_ajmtd")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(913, -6, 786, 1336)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://d0xs8ls3i4miq"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dldk8n51ag8fh" path="res://art/nature/baum märz 2025/backtreebois team brandon.png" id="1_h17at"]
|
||||
|
||||
[node name="forest_tree_03" type="Sprite3D"]
|
||||
offset = Vector2(0, 600)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_h17at")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1807, 10, 761, 1337)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://ihmmcxjosoev"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dldk8n51ag8fh" path="res://art/nature/baum märz 2025/backtreebois team brandon.png" id="1_tjsek"]
|
||||
|
||||
[node name="forest_tree_04" type="Sprite3D"]
|
||||
offset = Vector2(0, 550)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_tjsek")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2726, 0, 561, 1335)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bow7d6s6djcm3"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bmjjfd5ngptxe" path="res://art/nature/baum märz 2025/backtreebois team kennedy.png" id="1_gximh"]
|
||||
|
||||
[node name="forest_tree_05" type="Sprite3D"]
|
||||
offset = Vector2(0, 550)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_gximh")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 0, 412, 1372)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cr0vgjbyprgf7"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bmjjfd5ngptxe" path="res://art/nature/baum märz 2025/backtreebois team kennedy.png" id="1_mi0fd"]
|
||||
|
||||
[node name="forest_tree_07" type="Sprite3D"]
|
||||
offset = Vector2(0, 500)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_mi0fd")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1509, 0, 396, 1109)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cjm7fupgsdoev"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bmjjfd5ngptxe" path="res://art/nature/baum märz 2025/backtreebois team kennedy.png" id="1_23yv8"]
|
||||
|
||||
[node name="forest_tree_07" type="Sprite3D"]
|
||||
offset = Vector2(0, 550)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_23yv8")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(666, 0, 614, 1508)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://b3s7e5fxx6gla"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_pbmot"]
|
||||
|
||||
[node name="back_tree_01" type="Sprite3D"]
|
||||
offset = Vector2(0, 350)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_pbmot")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 0, 216, 729)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bk7273x4ns0y7"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_d14xl"]
|
||||
|
||||
[node name="back_tree_02" type="Sprite3D"]
|
||||
offset = Vector2(0, 180)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_d14xl")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(449, 451, 139, 419)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cdthpc0t0vw33"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_56db7"]
|
||||
|
||||
[node name="back_tree_03" type="Sprite3D"]
|
||||
offset = Vector2(0, 400)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_56db7")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(783, 0, 253, 952)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://s2g3bhowe5i6"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_q4uhv"]
|
||||
|
||||
[node name="back_tree_04" type="Sprite3D"]
|
||||
offset = Vector2(0, 300)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_q4uhv")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1373, 0, 148, 755)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://2l6jq8rjs14m"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_gvats"]
|
||||
|
||||
[node name="back_tree_06" type="Sprite3D"]
|
||||
offset = Vector2(0, 350)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_gvats")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2291, 0, 140, 796)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cskaqpqawov2k"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_43kgf"]
|
||||
|
||||
[node name="back_tree_05" type="Sprite3D"]
|
||||
offset = Vector2(0, 400)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_43kgf")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1786, 0, 268, 904)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://w03yk6rx0gs2"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_qf7aa"]
|
||||
|
||||
[node name="back_tree_07" type="Sprite3D"]
|
||||
offset = Vector2(0, 400)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_qf7aa")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(3129, 0, 138, 942)
|
||||
@ -1,11 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cs382pd0muub1"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bqoyk3fsrmu1x" path="res://art/nature/baum märz 2025/back back trees.png" id="1_cokmy"]
|
||||
|
||||
[node name="back_tree_08" type="Sprite3D"]
|
||||
offset = Vector2(0, 150)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("1_cokmy")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2647, 464, 245, 420)
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,34 +0,0 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://ob04y3syvo0e"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dumwt7lledufm" path="res://scripts/CSharp/Common/CharacterControls/InteractionArea.cs" id="1_b15wn"]
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_i8sim"]
|
||||
resource_local_to_scene = true
|
||||
radius = 2.0
|
||||
|
||||
[node name="InteractionArea" type="Node3D" node_paths=PackedStringArray("_area", "_label")]
|
||||
script = ExtResource("1_b15wn")
|
||||
_area = NodePath("Area3D")
|
||||
_label = NodePath("Label3D")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="."]
|
||||
collision_mask = 16
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
|
||||
shape = SubResource("SphereShape3D_i8sim")
|
||||
|
||||
[node name="Label3D" type="Label3D" parent="."]
|
||||
visible = false
|
||||
sorting_offset = 100.0
|
||||
pixel_size = 0.01
|
||||
billboard = 1
|
||||
no_depth_test = true
|
||||
fixed_size = true
|
||||
render_priority = 100
|
||||
outline_render_priority = 99
|
||||
text = "[E]"
|
||||
font_size = 20
|
||||
outline_size = 8
|
||||
|
||||
[connection signal="body_entered" from="Area3D" to="." method="OnPlayerEntered"]
|
||||
[connection signal="body_exited" from="Area3D" to="." method="OnPlayerExited"]
|
||||
@ -1,26 +0,0 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://5hltxpdxmqcq"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://udhigottc8rg" path="res://scripts/CSharp/Common/Inventory/ItemOnGround.cs" id="1_mnomu"]
|
||||
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="2_ue6ub"]
|
||||
[ext_resource type="Script" uid="uid://c8suoi3i6kqai" path="res://scripts/CSharp/Common/Inventory/ItemOnGroundSpawnWith.cs" id="3_ue6ub"]
|
||||
[ext_resource type="Resource" uid="uid://c7viddcd3kywp" path="res://resources/items/shovel.tres" id="4_sfad0"]
|
||||
|
||||
[node name="GenericItemOnGround" type="Node3D"]
|
||||
script = ExtResource("1_mnomu")
|
||||
|
||||
[node name="InteractionArea" parent="." instance=ExtResource("2_ue6ub")]
|
||||
|
||||
[node name="SpawnWithItem" type="Node" parent="."]
|
||||
script = ExtResource("3_ue6ub")
|
||||
_blueprint = ExtResource("4_sfad0")
|
||||
|
||||
[node name="ItemLabel" type="Label3D" parent="."]
|
||||
offset = Vector2(0, 55.64)
|
||||
billboard = 1
|
||||
text = "test"
|
||||
|
||||
[node name="PickupErrorLabel" type="Label3D" parent="."]
|
||||
offset = Vector2(0, 150)
|
||||
billboard = 1
|
||||
|
||||
[connection signal="Interacted" from="InteractionArea" to="." method="TryPickUp"]
|
||||
@ -1,42 +0,0 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cf0jpuio8tgim"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://v34pl0nlp4x" path="res://scripts/CSharp/Common/SpriteSwitcher.cs" id="1_scmhv"]
|
||||
[ext_resource type="Texture2D" uid="uid://3pj2q7wtuion" path="res://art/farm/farming/farmobjekte/hoe.png" id="2_scmhv"]
|
||||
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_0ptl4"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_scmhv"]
|
||||
transparency = 1
|
||||
blend_mode = 3
|
||||
emission_enabled = true
|
||||
emission = Color(1, 1, 1, 1)
|
||||
|
||||
[node name="SpriteSwitcher" type="Node3D" node_paths=PackedStringArray("_trueSprite", "_falseSprite")]
|
||||
script = ExtResource("1_scmhv")
|
||||
_trueSprite = NodePath("On Sprite")
|
||||
_falseSprite = NodePath("Off Sprite")
|
||||
|
||||
[node name="On Sprite" type="Sprite3D" parent="."]
|
||||
modulate = Color(0, 0.996078, 0, 1)
|
||||
pixel_size = 0.001
|
||||
billboard = 1
|
||||
texture = ExtResource("2_scmhv")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1048, 225, 250, 1164)
|
||||
|
||||
[node name="Off Sprite" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, -8.47033e-22, 0, 8.47033e-22, 1, 0.106585, 0, 0.0173626)
|
||||
visible = false
|
||||
modulate = Color(1, 0, 0, 1)
|
||||
pixel_size = 0.001
|
||||
billboard = 1
|
||||
texture = ExtResource("2_scmhv")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1048, 225, 250, 1164)
|
||||
|
||||
[node name="CSGMesh3D" type="CSGMesh3D" parent="."]
|
||||
transparency = 0.5
|
||||
cast_shadow = 0
|
||||
calculate_tangents = false
|
||||
mesh = SubResource("SphereMesh_0ptl4")
|
||||
material = SubResource("StandardMaterial3D_scmhv")
|
||||
@ -1,36 +0,0 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dd3giw31imfk4"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c3itdui8uq68b" path="res://scripts/GdScript/player.gd" id="1_rhqwr"]
|
||||
[ext_resource type="Texture2D" uid="uid://cumdgxn0ibpv7" path="res://art/mockups/TakeThatCandy.png" id="2_eul5n"]
|
||||
[ext_resource type="Texture2D" uid="uid://dj1syhq0dmf3p" path="res://art/mockups/Doll.png" id="3_mpdnl"]
|
||||
[ext_resource type="Texture2D" uid="uid://bcah7lrg2oae1" path="res://art/mockups/IveSeenSomeShit.png" id="4_631ct"]
|
||||
[ext_resource type="Texture2D" uid="uid://cvn2p215jq2am" path="res://art/mockups/concerned.png" id="5_ayafy"]
|
||||
|
||||
[node name="player" type="Node2D"]
|
||||
z_as_relative = false
|
||||
y_sort_enabled = true
|
||||
script = ExtResource("1_rhqwr")
|
||||
speed = 300.0
|
||||
|
||||
[node name="TakeThatCandy" type="Sprite2D" parent="."]
|
||||
visible = false
|
||||
scale = Vector2(0.4, 0.4)
|
||||
texture = ExtResource("2_eul5n")
|
||||
offset = Vector2(16.71, -221.315)
|
||||
|
||||
[node name="Doll" type="Sprite2D" parent="."]
|
||||
visible = false
|
||||
scale = Vector2(0.450315, 0.450315)
|
||||
texture = ExtResource("3_mpdnl")
|
||||
offset = Vector2(-8.925, -208.125)
|
||||
|
||||
[node name="IveSeenSomeShit" type="Sprite2D" parent="."]
|
||||
visible = false
|
||||
scale = Vector2(0.367314, 0.367314)
|
||||
texture = ExtResource("4_631ct")
|
||||
offset = Vector2(-16.49, -269.615)
|
||||
|
||||
[node name="Concerned" type="Sprite2D" parent="."]
|
||||
scale = Vector2(0.388489, 0.388489)
|
||||
texture = ExtResource("5_ayafy")
|
||||
offset = Vector2(-24.175, -249.235)
|
||||
@ -1,246 +0,0 @@
|
||||
[gd_scene load_steps=24 format=3 uid="uid://br7yq757cawts"]
|
||||
|
||||
[ext_resource type="Material" uid="uid://p1mf3uc4k164" path="res://art/materials/Tilleable_ground.tres" id="1_6i8r8"]
|
||||
[ext_resource type="PackedScene" uid="uid://dbd1niu3tp8y5" path="res://prefabs/Player3D.tscn" id="1_b1ibi"]
|
||||
[ext_resource type="Texture2D" uid="uid://d2osodaofb2ya" path="res://art/skyboxes/sky_34_2k.png" id="1_ww4l5"]
|
||||
[ext_resource type="PackedScene" uid="uid://biwd3jj65qrlh" path="res://prefabs/farm/base_field.tscn" id="2_72r8y"]
|
||||
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="4_r4sre"]
|
||||
[ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="5_obfp0"]
|
||||
[ext_resource type="Texture2D" uid="uid://x8hr8287ff2n" path="res://art/farm/farming/farmobjekte/tools atlas.png" id="5_r4sre"]
|
||||
[ext_resource type="PackedScene" uid="uid://cf0jpuio8tgim" path="res://prefabs/interactions/sprite_switcher.tscn" id="6_r4sre"]
|
||||
[ext_resource type="Script" uid="uid://c6hh7m8wikv04" path="res://scripts/CSharp/Common/Farming/FieldService.cs" id="7_0ptl4"]
|
||||
[ext_resource type="PackedScene" uid="uid://dryo4gjixvs2c" path="res://prefabs/forest/vesna_farm_background_trees.tscn" id="9_pg8h5"]
|
||||
[ext_resource type="PackedScene" uid="uid://bqhnejufg5ei2" path="res://prefabs/farm/fence_part_01.tscn" id="10_84r6a"]
|
||||
[ext_resource type="PackedScene" uid="uid://cxceu5dgq3akw" path="res://prefabs/farm/fence_part_02.tscn" id="11_nmncb"]
|
||||
[ext_resource type="PackedScene" uid="uid://cm5oekefe6ct3" path="res://prefabs/farm/fence_part_03.tscn" id="12_ww4l5"]
|
||||
[ext_resource type="Texture2D" uid="uid://c7f3t65jskd6v" path="res://art/mockups/house_prototype.png" id="13_nmncb"]
|
||||
|
||||
[sub_resource type="Shader" id="Shader_m0ieq"]
|
||||
code = "
|
||||
// NOTE: Shader automatically converted from Godot Engine 4.4.stable.mono's PanoramaSkyMaterial.
|
||||
|
||||
shader_type sky;
|
||||
|
||||
uniform sampler2D source_panorama : filter_linear, source_color, hint_default_black;
|
||||
uniform float exposure : hint_range(0, 128) = 1.0;
|
||||
uniform float speed = 0.002;
|
||||
|
||||
void sky() {
|
||||
vec2 dir = vec2(SKY_COORDS.x + TIME * speed, SKY_COORDS.y);
|
||||
COLOR = texture(source_panorama, dir).rgb * exposure;
|
||||
}
|
||||
"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_prdor"]
|
||||
shader = SubResource("Shader_m0ieq")
|
||||
shader_parameter/source_panorama = ExtResource("1_ww4l5")
|
||||
shader_parameter/exposure = 1.0
|
||||
shader_parameter/speed = 0.002
|
||||
|
||||
[sub_resource type="Sky" id="Sky_ww4l5"]
|
||||
sky_material = SubResource("ShaderMaterial_prdor")
|
||||
|
||||
[sub_resource type="Environment" id="Environment_m0ieq"]
|
||||
background_mode = 2
|
||||
sky = SubResource("Sky_ww4l5")
|
||||
tonemap_mode = 2
|
||||
glow_enabled = true
|
||||
|
||||
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_prdor"]
|
||||
dof_blur_far_distance = 563.99
|
||||
dof_blur_far_transition = 6118.24
|
||||
dof_blur_amount = 0.04
|
||||
|
||||
[sub_resource type="Compositor" id="Compositor_nmncb"]
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_8yprl"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_t58di"]
|
||||
size = Vector3(2.01563, 0.160522, 2.00824)
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_0ptl4"]
|
||||
resource_local_to_scene = true
|
||||
radius = 1.0
|
||||
|
||||
[node name="SceneFarmVesna" type="Node3D"]
|
||||
|
||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||
environment = SubResource("Environment_m0ieq")
|
||||
camera_attributes = SubResource("CameraAttributesPractical_prdor")
|
||||
compositor = SubResource("Compositor_nmncb")
|
||||
|
||||
[node name="Floor" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(50, 0, 0, 0, 50, 0, 0, 0, 50, 0, 0, 0)
|
||||
mesh = SubResource("PlaneMesh_8yprl")
|
||||
skeleton = NodePath("")
|
||||
surface_material_override/0 = ExtResource("1_6i8r8")
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="Floor"]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Floor/StaticBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.000976563, -0.0739136, -0.00112915)
|
||||
shape = SubResource("BoxShape3D_t58di")
|
||||
|
||||
[node name="Player3d" parent="." node_paths=PackedStringArray("_fieldParent") instance=ExtResource("1_b1ibi")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.51633, 0.725631, 3.57249)
|
||||
_fieldParent = NodePath("../FieldService")
|
||||
|
||||
[node name="Camera3D" parent="Player3d/CharacterBody3D/CameraPivot2/SubPivot" index="0"]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.999848, 0.0174524, 0, -0.0174524, 0.999848, -0.0957985, 0.560819, 1.64224)
|
||||
projection = 1
|
||||
fov = 134.5
|
||||
size = 4.467
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.618408, 0.785857, 0, -0.785857, 0.618408, -0.802612, 0, 4.73262)
|
||||
light_color = Color(0.838036, 0.913171, 1, 1)
|
||||
|
||||
[node name="BaseField" parent="." instance=ExtResource("2_72r8y")]
|
||||
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0.0574723, 0)
|
||||
visible = false
|
||||
|
||||
[node name="HoePickup" parent="." instance=ExtResource("4_r4sre")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, -1.06581e-14, 0, 1.06581e-14, 1, -4.327, 1.5, -3.447)
|
||||
|
||||
[node name="CollisionShape3D" parent="HoePickup/Area3D" index="0"]
|
||||
shape = SubResource("SphereShape3D_0ptl4")
|
||||
|
||||
[node name="SpriteSwitcher Hoe" parent="HoePickup" instance=ExtResource("6_r4sre")]
|
||||
|
||||
[node name="Watering Can Pickup" parent="." instance=ExtResource("4_r4sre")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, -1.06581e-14, 0, 1.06581e-14, 1, -2.3908, 1.5, -3.447)
|
||||
|
||||
[node name="CollisionShape3D" parent="Watering Can Pickup/Area3D" index="0"]
|
||||
shape = SubResource("SphereShape3D_0ptl4")
|
||||
|
||||
[node name="SpriteSwitcher Hoe" parent="Watering Can Pickup" instance=ExtResource("6_r4sre")]
|
||||
|
||||
[node name="On Sprite" parent="Watering Can Pickup/SpriteSwitcher Hoe" index="0"]
|
||||
texture = ExtResource("5_r4sre")
|
||||
region_rect = Rect2(-3, 1141, 423, 280)
|
||||
|
||||
[node name="Off Sprite" parent="Watering Can Pickup/SpriteSwitcher Hoe" index="1"]
|
||||
texture = ExtResource("5_r4sre")
|
||||
region_rect = Rect2(-3, 1137, 424, 285)
|
||||
|
||||
[node name="Inventory" parent="." instance=ExtResource("5_obfp0")]
|
||||
visible = false
|
||||
|
||||
[node name="FieldService" type="Node3D" parent="."]
|
||||
script = ExtResource("7_0ptl4")
|
||||
metadata/_custom_type_script = "uid://c6hh7m8wikv04"
|
||||
|
||||
[node name="Background Trees" parent="." instance=ExtResource("9_pg8h5")]
|
||||
|
||||
[node name="Fence" type="Node" parent="."]
|
||||
|
||||
[node name="fencegroup" type="Node3D" parent="Fence"]
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup6" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -10.5)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup6" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup6" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup6" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup7" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -21)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup7" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup7" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup7" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup8" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -31.5)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup8" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup8" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup8" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup2" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10.5)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup2" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup2" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup2" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup3" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 21)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup3" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup3" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup3" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup4" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 31.5)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup4" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup4" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup4" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="fencegroup5" type="Node3D" parent="Fence"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 42)
|
||||
|
||||
[node name="fence_part_01" parent="Fence/fencegroup5" instance=ExtResource("10_84r6a")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, 0)
|
||||
|
||||
[node name="fence_part_02" parent="Fence/fencegroup5" instance=ExtResource("11_nmncb")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0.036, 3.5)
|
||||
|
||||
[node name="fence_part_03" parent="Fence/fencegroup5" instance=ExtResource("12_ww4l5")]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -45, 0, -3.5)
|
||||
|
||||
[node name="House" type="Sprite3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.28486, 1.15105, 6.0303)
|
||||
pixel_size = 0.005
|
||||
billboard = 1
|
||||
texture = ExtResource("13_nmncb")
|
||||
|
||||
[connection signal="Interacted" from="HoePickup" to="HoePickup/SpriteSwitcher Hoe" method="SwitchState"]
|
||||
[connection signal="Switch" from="HoePickup/SpriteSwitcher Hoe" to="Player3d" method="ActivateHoe"]
|
||||
[connection signal="Interacted" from="Watering Can Pickup" to="Watering Can Pickup/SpriteSwitcher Hoe" method="SwitchState"]
|
||||
[connection signal="Switch" from="Watering Can Pickup/SpriteSwitcher Hoe" to="Player3d" method="ActivateWateringCan"]
|
||||
|
||||
[editable path="Player3d"]
|
||||
[editable path="HoePickup"]
|
||||
[editable path="Watering Can Pickup"]
|
||||
[editable path="Watering Can Pickup/SpriteSwitcher Hoe"]
|
||||
@ -1,17 +0,0 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://b6qkpdal83kyr"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dd3giw31imfk4" path="res://prefabs/player.tscn" id="1_c1tk0"]
|
||||
[ext_resource type="Script" uid="uid://51hbiq1mdpv1" path="res://scripts/GdScript/camera_controller.gd" id="4_qljgx"]
|
||||
[ext_resource type="PackedScene" uid="uid://txjiuosyfv34" path="res://scenes/testing/test_world.tscn" id="7_yb6mq"]
|
||||
|
||||
[node name="2dTestingGround" type="Node2D"]
|
||||
y_sort_enabled = true
|
||||
|
||||
[node name="player" parent="." instance=ExtResource("1_c1tk0")]
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="."]
|
||||
position = Vector2(166.03, 0)
|
||||
script = ExtResource("4_qljgx")
|
||||
multiplier = 100.0
|
||||
|
||||
[node name="World" parent="." instance=ExtResource("7_yb6mq")]
|
||||
@ -1,75 +0,0 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://dbxy2y85r1d8x"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dbd1niu3tp8y5" path="res://prefabs/Player3D.tscn" id="1_pdc5e"]
|
||||
[ext_resource type="PackedScene" uid="uid://biwd3jj65qrlh" path="res://prefabs/farm/base_field.tscn" id="2_741gk"]
|
||||
[ext_resource type="PackedScene" uid="uid://5hltxpdxmqcq" path="res://prefabs/interactions/generic_item_on_ground.tscn" id="5_sjt6k"]
|
||||
[ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="6_876p1"]
|
||||
[ext_resource type="Resource" uid="uid://cndd64batns31" path="res://resources/items/wateringcan.tres" id="6_nvnpb"]
|
||||
[ext_resource type="Script" uid="uid://c6hh7m8wikv04" path="res://scripts/CSharp/Common/Farming/FieldService.cs" id="7_3rkjv"]
|
||||
[ext_resource type="Resource" uid="uid://c5yg3lx756v4v" path="res://resources/items/hoe.tres" id="7_hv2km"]
|
||||
[ext_resource type="Resource" uid="uid://d1uuxp1lp4aro" path="res://resources/items/tomato_seed.tres" id="8_hv2km"]
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_8yprl"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8tgff"]
|
||||
albedo_color = Color(0.505882, 0.588235, 0.494118, 1)
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_t58di"]
|
||||
size = Vector3(2.01563, 0.160522, 2.00824)
|
||||
|
||||
[node name="SceneFarmVesna" type="Node3D"]
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(10, 0, 0, 0, 10, 0, 0, 0, 10, 0, 0, 0)
|
||||
mesh = SubResource("PlaneMesh_8yprl")
|
||||
skeleton = NodePath("")
|
||||
surface_material_override/0 = SubResource("StandardMaterial3D_8tgff")
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.000976563, -0.0739136, -0.00112915)
|
||||
shape = SubResource("BoxShape3D_t58di")
|
||||
|
||||
[node name="Player3d" parent="." node_paths=PackedStringArray("_fieldParent") instance=ExtResource("1_pdc5e")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.51633, 0.725631, 3.57249)
|
||||
_fieldParent = NodePath("../FieldService")
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.618408, 0.785857, 0, -0.785857, 0.618408, -0.802612, 0, 4.73262)
|
||||
|
||||
[node name="BaseField" parent="." instance=ExtResource("2_741gk")]
|
||||
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0.0574723, 0)
|
||||
visible = false
|
||||
|
||||
[node name="Inventory" parent="." instance=ExtResource("6_876p1")]
|
||||
|
||||
[node name="FieldService" type="Node3D" parent="."]
|
||||
script = ExtResource("7_3rkjv")
|
||||
|
||||
[node name="GenericItemOnGround" parent="." instance=ExtResource("5_sjt6k")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.53971, -4.76837e-07, -3.81996)
|
||||
|
||||
[node name="SpawnWithItem" parent="GenericItemOnGround" index="1"]
|
||||
_blueprint = ExtResource("6_nvnpb")
|
||||
|
||||
[node name="GenericItemOnGround2" parent="." instance=ExtResource("5_sjt6k")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.73646, -9.53674e-07, -3.96783)
|
||||
|
||||
[node name="GenericItemOnGround3" parent="." instance=ExtResource("5_sjt6k")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.43861, -4.76837e-07, -3.93506)
|
||||
|
||||
[node name="SpawnWithItem" parent="GenericItemOnGround3" index="1"]
|
||||
_blueprint = ExtResource("7_hv2km")
|
||||
|
||||
[node name="GenericItemOnGround4" parent="." instance=ExtResource("5_sjt6k")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.1678, -4.76837e-07, -3.94977)
|
||||
_infiniteSupply = true
|
||||
|
||||
[node name="SpawnWithItem" parent="GenericItemOnGround4" index="1"]
|
||||
_blueprint = ExtResource("8_hv2km")
|
||||
|
||||
[editable path="GenericItemOnGround"]
|
||||
[editable path="GenericItemOnGround2"]
|
||||
[editable path="GenericItemOnGround3"]
|
||||
[editable path="GenericItemOnGround4"]
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,45 +0,0 @@
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Camera;
|
||||
|
||||
public partial class CameraPivot : Node3D
|
||||
{
|
||||
[Export] private bool _canPitch;
|
||||
[Export] private bool _canYaw;
|
||||
[Export] private float _rotateSpeed = 0.003f;
|
||||
[Export] private Node3D _subPivot;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Input.MouseMode = Input.MouseModeEnum.Captured;
|
||||
}
|
||||
|
||||
public override void _Input(InputEvent @event)
|
||||
{
|
||||
if(@event.IsActionPressed("click"))
|
||||
{
|
||||
if (Input.MouseMode == Input.MouseModeEnum.Visible)
|
||||
{
|
||||
Input.MouseMode = Input.MouseModeEnum.Captured;
|
||||
}
|
||||
}
|
||||
|
||||
if (@event.IsActionPressed("ui_cancel"))
|
||||
{
|
||||
Input.MouseMode = Input.MouseModeEnum.Visible;
|
||||
}
|
||||
|
||||
if (@event is InputEventMouseMotion test)
|
||||
{
|
||||
if (Input.MouseMode != Input.MouseModeEnum.Captured)
|
||||
return;
|
||||
|
||||
if (_canYaw)
|
||||
_subPivot.RotateX(test.Relative.Y * -_rotateSpeed);
|
||||
if(_canPitch)
|
||||
this.RotateY(test.Relative.X * -_rotateSpeed);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://r5tahuqvbucy
|
||||
@ -1 +1 @@
|
||||
uid://dumwt7lledufm
|
||||
uid://5fwv33fkvy5
|
||||
|
||||
@ -1,133 +0,0 @@
|
||||
using System.Diagnostics;
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.CharacterControls;
|
||||
|
||||
public partial class Player3D : CharacterBody3D
|
||||
{
|
||||
[Export] private float _speed = 1.0f;
|
||||
[Export] private Camera3D _camera;
|
||||
|
||||
/// <summary>
|
||||
/// The sprite arrays are all setup like this:
|
||||
/// 0 - idle
|
||||
/// 1 - walking
|
||||
/// </summary>
|
||||
[Export] private AnimatedSprite3D[] _frontSpritesAnimated;
|
||||
[Export] private AnimatedSprite3D[] _sideSpritesAnimated;
|
||||
[Export] private AnimatedSprite3D[] _backSpritesAnimated;
|
||||
|
||||
private bool _sideFlipped;
|
||||
private Vector2 _lastDirection;
|
||||
|
||||
public override void _PhysicsProcess(double delta)
|
||||
{
|
||||
var inputDir = Input.GetVector("move_left", "move_right", "move_down", "move_up");
|
||||
if (inputDir == Vector2.Zero)
|
||||
{
|
||||
if(_lastDirection != Vector2.Zero)
|
||||
SwitchIdleSprites();
|
||||
return;
|
||||
}
|
||||
|
||||
MoveOnInput(inputDir, delta);
|
||||
SwitchMovementSprites(inputDir);
|
||||
}
|
||||
|
||||
private void MoveOnInput(Vector2 inputDir, double delta)
|
||||
{
|
||||
var direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y * (-1))).Normalized();
|
||||
if (direction != Vector3.Zero)
|
||||
Velocity = new Vector3(direction.X * _speed * (float) delta * Scale.X, Velocity.Y, direction.Z * _speed * (float) delta * Scale.Z);
|
||||
else
|
||||
Velocity = Velocity.MoveToward(new Vector3(0, 0, 0), _speed);
|
||||
|
||||
MoveAndSlide();
|
||||
}
|
||||
|
||||
private void SwitchIdleSprites()
|
||||
{
|
||||
if (_lastDirection.X != 0)
|
||||
{
|
||||
ActivateSprite(0, false, true, false);
|
||||
return;
|
||||
}
|
||||
|
||||
if(_lastDirection.Y <= 0.0f)
|
||||
ActivateSprite(0, true, false, false);
|
||||
|
||||
if(_lastDirection.Y > 0.0f)
|
||||
ActivateSprite(0, false, false, true);
|
||||
|
||||
_lastDirection = Vector2.Zero;
|
||||
}
|
||||
|
||||
private void SwitchMovementSprites(Vector2 inputDir)
|
||||
{
|
||||
float X = inputDir.X;
|
||||
float Y = inputDir.Y;
|
||||
|
||||
_lastDirection = new Vector2(X, Y);
|
||||
|
||||
if (X != 0)
|
||||
{
|
||||
ActivateSprite(1, false, true, false);
|
||||
|
||||
if (X > 0.0f)
|
||||
{
|
||||
_sideFlipped = false;
|
||||
}
|
||||
|
||||
if (X < 0.0f)
|
||||
{
|
||||
_sideFlipped = true;
|
||||
}
|
||||
|
||||
foreach (var animatedSprite in _sideSpritesAnimated)
|
||||
{
|
||||
animatedSprite.FlipH = _sideFlipped;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (Y != 0)
|
||||
{
|
||||
if (Y > 0.0f)
|
||||
{
|
||||
ActivateSprite(1, false, false, true);
|
||||
}
|
||||
|
||||
if (Y < 0.0f)
|
||||
{
|
||||
ActivateSprite(1, true, false, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void ActivateSprite(int index, bool frontActive, bool sideActive, bool backActive)
|
||||
{
|
||||
DeactivateAll();
|
||||
_frontSpritesAnimated[index].Visible = frontActive;
|
||||
_sideSpritesAnimated[index].Visible = sideActive;
|
||||
_backSpritesAnimated[index].Visible = backActive;
|
||||
}
|
||||
|
||||
private void DeactivateAll()
|
||||
{
|
||||
foreach (var animatedSprite in _frontSpritesAnimated)
|
||||
{
|
||||
animatedSprite.Visible = false;
|
||||
}
|
||||
|
||||
foreach (var animatedSprite in _sideSpritesAnimated)
|
||||
{
|
||||
animatedSprite.Visible = false;
|
||||
}
|
||||
|
||||
foreach (var animatedSprite in _backSpritesAnimated)
|
||||
{
|
||||
animatedSprite.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://b4ugrget2x6lb
|
||||
@ -1,107 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using Godot;
|
||||
using Godot.Collections;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Farming;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class FarmingControls : Node3D
|
||||
{
|
||||
[Export] private Sprite3D _hoeSprite;
|
||||
[Export] private Sprite3D _wateringCanSprite;
|
||||
[Export] private PackedScene _fieldPrefab;
|
||||
[Export] private Node3D _movingPlayer;
|
||||
[Export] private Camera3D _camera;
|
||||
|
||||
public FieldService FieldParent;
|
||||
|
||||
private bool _hoeInHand = false;
|
||||
private bool _waterCanInHand = false;
|
||||
|
||||
#region Tools
|
||||
|
||||
public bool ActivateHoe(bool activate)
|
||||
{
|
||||
bool success = ActivateTool(activate, _hoeSprite);
|
||||
_hoeInHand = success;
|
||||
return success;
|
||||
}
|
||||
|
||||
public bool ActivateWateringCan(bool activate)
|
||||
{
|
||||
bool success = ActivateTool(activate, _wateringCanSprite);
|
||||
_waterCanInHand = success;
|
||||
return success;
|
||||
}
|
||||
|
||||
private bool ActivateTool(bool activate, Sprite3D tool)
|
||||
{
|
||||
tool.Visible = !activate;
|
||||
return !activate;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public override void _Input(InputEvent @event)
|
||||
{
|
||||
Vector2 mousePosition = GetViewport().GetMousePosition();
|
||||
var dropPlane = new Plane(new Vector3(0, 0, 10), 10);
|
||||
Vector3? position3D = dropPlane.IntersectsRay(_camera.ProjectRayOrigin(mousePosition),
|
||||
_camera.ProjectRayNormal(mousePosition));
|
||||
|
||||
if (position3D.HasValue)
|
||||
{
|
||||
Vector2I adjustedPosition = new Vector2I(AdjustValue(position3D.Value.X), AdjustValue(position3D.Value.Y));
|
||||
|
||||
if (@event.IsActionPressed("click") && _hoeInHand)
|
||||
{
|
||||
MakeField(adjustedPosition);
|
||||
}
|
||||
|
||||
if (@event.IsActionPressed("click") && _waterCanInHand)
|
||||
{
|
||||
WaterTheField(adjustedPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void WaterTheField(Vector2I fieldPosition)
|
||||
{
|
||||
FieldBehaviour field = FieldParent.Get(fieldPosition);
|
||||
if (field == null)
|
||||
return;
|
||||
|
||||
field.Water();
|
||||
}
|
||||
|
||||
private void MakeField(Vector2I fieldPosition)
|
||||
{
|
||||
if(FieldParent == null || _fieldPrefab == null)
|
||||
return;
|
||||
|
||||
// only instantiate a field if there isn't one already.
|
||||
if(FieldParent.Get(fieldPosition) == null)
|
||||
{
|
||||
Node fieldInstance = _fieldPrefab.Instantiate();
|
||||
if (fieldInstance is Node3D field3d)
|
||||
{
|
||||
// add dictionary entry for the field
|
||||
Array<Node> fields = field3d.FindChildren("*", nameof(FieldBehaviour));
|
||||
if (fields.Count > 0)
|
||||
FieldParent.TryAddEntry(fieldPosition, fields[0] as FieldBehaviour);
|
||||
|
||||
// reposition and reparent the instance
|
||||
field3d.Position = new Vector3(fieldPosition.X, 0.1f, fieldPosition.Y * -1);;
|
||||
FieldParent.AddChild(fieldInstance);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private int AdjustValue(float value)
|
||||
{
|
||||
return (int) Mathf.Floor(value);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://b1sscdr4ptec8
|
||||
@ -1,59 +0,0 @@
|
||||
using System.Diagnostics;
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Farming
|
||||
{
|
||||
public enum FieldState
|
||||
{
|
||||
Empty = 0,
|
||||
Tilled = 1,
|
||||
Planted = 2,
|
||||
Watered = 3,
|
||||
NotFound = 99
|
||||
}
|
||||
|
||||
[GlobalClass]
|
||||
public partial class FieldBehaviour : Sprite3D
|
||||
{
|
||||
[Export] private Texture2D Tilled;
|
||||
[Export] private Texture2D Watered;
|
||||
[Export] public FieldState FieldState = FieldState.Empty;
|
||||
|
||||
public Vector2 FieldPosition;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
Texture = Tilled;
|
||||
base._Ready();
|
||||
}
|
||||
|
||||
public void Water()
|
||||
{
|
||||
FieldState = FieldState.Watered;
|
||||
Texture = Watered;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Called when the player enters the field'S interaction area and presses <E>.
|
||||
/// </summary>
|
||||
public void Farm()
|
||||
{
|
||||
switch (FieldState)
|
||||
{
|
||||
case FieldState.Empty:
|
||||
Texture = Tilled;
|
||||
FieldState = FieldState.Tilled;
|
||||
break;
|
||||
case FieldState.Tilled:
|
||||
FieldState = FieldState.Planted;
|
||||
break;
|
||||
case FieldState.Planted:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1 +0,0 @@
|
||||
uid://histmmyi1wr
|
||||
@ -1,56 +0,0 @@
|
||||
using System.Diagnostics;
|
||||
using Godot;
|
||||
using Godot.Collections;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Farming;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class FieldService : Node3D
|
||||
{
|
||||
[Export] private Dictionary<Vector2I, FieldBehaviour> fields = new Dictionary<Vector2I, FieldBehaviour>();
|
||||
|
||||
//Create
|
||||
public bool TryAddEntry(Vector2I key, FieldBehaviour field)
|
||||
{
|
||||
if (!fields.ContainsKey(key))
|
||||
{
|
||||
fields.Add(key, field);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Read
|
||||
public FieldBehaviour Get(Vector2I key)
|
||||
{
|
||||
if (fields.TryGetValue(key, out FieldBehaviour field))
|
||||
return field;
|
||||
return field;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
//Update
|
||||
public void UpdateEntry(Vector2I fieldPosition, FieldBehaviour state)
|
||||
{
|
||||
|
||||
if (fields.ContainsKey(fieldPosition))
|
||||
{
|
||||
fields[fieldPosition] = state;
|
||||
}
|
||||
else
|
||||
{
|
||||
TryAddEntry(fieldPosition, state);
|
||||
}
|
||||
}
|
||||
|
||||
//Delete
|
||||
|
||||
public void RemoveEntry(Vector2I fieldPosition)
|
||||
{
|
||||
if (fields.ContainsKey(fieldPosition))
|
||||
{
|
||||
fields.Remove(fieldPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://c6hh7m8wikv04
|
||||
@ -1,68 +0,0 @@
|
||||
using System;
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Farming;
|
||||
|
||||
public enum PlantState
|
||||
{
|
||||
None = 0,
|
||||
Planted = 1,
|
||||
SmallPlant = 2,
|
||||
BigPlant = 3,
|
||||
Ready = 4
|
||||
}
|
||||
|
||||
public partial class PlantBehaviour : Node3D
|
||||
{
|
||||
[Export] private Sprite3D[] _seeds;
|
||||
[Export] private Sprite3D[] _smallPlants;
|
||||
[Export] private Sprite3D[] _bigPlants;
|
||||
[Export] private Sprite3D[] _readyPlants;
|
||||
[Export] private PlantState _state = PlantState.None;
|
||||
|
||||
private Sprite3D _currentPlantSprite = null;
|
||||
|
||||
public void Grow()
|
||||
{
|
||||
switch (_state)
|
||||
{
|
||||
case PlantState.None:
|
||||
_state = PlantState.Planted;
|
||||
_currentPlantSprite = GetRandomSprite(_seeds);
|
||||
_currentPlantSprite.Visible = true;
|
||||
break;
|
||||
case PlantState.Planted:
|
||||
_state = PlantState.SmallPlant;
|
||||
_currentPlantSprite.Visible = false;
|
||||
_currentPlantSprite = GetRandomSprite(_smallPlants);
|
||||
_currentPlantSprite.Visible = true;
|
||||
break;
|
||||
case PlantState.SmallPlant:
|
||||
_state = PlantState.BigPlant;
|
||||
_currentPlantSprite.Visible = false;
|
||||
_currentPlantSprite = GetRandomSprite(_bigPlants);
|
||||
_currentPlantSprite.Visible = true;
|
||||
break;
|
||||
case PlantState.BigPlant:
|
||||
_state = PlantState.Ready;
|
||||
_currentPlantSprite.Visible = false;
|
||||
_currentPlantSprite = GetRandomSprite(_readyPlants);
|
||||
_currentPlantSprite.Visible = true;
|
||||
break;
|
||||
case PlantState.Ready:
|
||||
_state = PlantState.None;
|
||||
_currentPlantSprite.Visible = false;
|
||||
_currentPlantSprite = null;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private Sprite3D GetRandomSprite(Sprite3D[] sprites)
|
||||
{
|
||||
Random rand = new Random();
|
||||
return sprites[rand.Next(sprites.Length)];
|
||||
}
|
||||
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://yfnjmuuxs3oq
|
||||
@ -1 +0,0 @@
|
||||
uid://udhigottc8rg
|
||||
@ -1,36 +0,0 @@
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common;
|
||||
|
||||
/// <summary>
|
||||
/// Switches between two Sprite Options.
|
||||
/// </summary>
|
||||
public partial class SpriteSwitcher : Node3D
|
||||
{
|
||||
[Export] private Sprite3D _trueSprite;
|
||||
[Export] private Sprite3D _falseSprite;
|
||||
[Export] private bool _state = true;
|
||||
|
||||
[Signal]
|
||||
public delegate void SwitchEventHandler(bool state);
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
SetState();
|
||||
}
|
||||
|
||||
public void SwitchState()
|
||||
{
|
||||
_state = !_state;
|
||||
EmitSignal(SignalName.Switch, _state);
|
||||
SetState();
|
||||
}
|
||||
|
||||
private void SetState()
|
||||
{
|
||||
if(_trueSprite != null)
|
||||
_trueSprite.Visible = _state;
|
||||
if(_falseSprite != null)
|
||||
_falseSprite.Visible = !_state;
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://v34pl0nlp4x
|
||||
@ -1,30 +0,0 @@
|
||||
using Babushka.scripts.CSharp.Common.CharacterControls;
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts;
|
||||
|
||||
public partial class spiritAnimation : AnimationPlayer
|
||||
{
|
||||
[Export] private Player2D _player;
|
||||
[Export] private Node2D _offerings;
|
||||
|
||||
public override void _UnhandledInput(InputEvent @event)
|
||||
{
|
||||
if (@event is InputEventKey eventKey)
|
||||
{
|
||||
if (eventKey.Pressed && eventKey.Keycode == Key.Alt)
|
||||
{
|
||||
_player.PlayPickUpAnimation();
|
||||
_offerings.Visible = true;
|
||||
}
|
||||
|
||||
if (eventKey.Pressed && eventKey.Keycode == Key.Space)
|
||||
{
|
||||
Active = true;
|
||||
Play("hand_stretch");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@ -1 +0,0 @@
|
||||
uid://cqkqijsjvbasl
|
||||
Loading…
Reference in new issue