Compare commits

...

3 Commits

36 changed files with 380 additions and 113 deletions
@@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="XmlDuplicatedId" enabled="true" level="ERROR" enabled_by_default="true" />
</profile>
</component>
-10
View File
@@ -1,10 +0,0 @@
<component name="libraryTable">
<library name="GdSdk Master" type="GdScript">
<properties path="$USER_HOME$/.cache/JetBrains/Rider2024.3/projects/.idea.babushka.a4de4632/sdk/GdSdk Master" version="Master" date="2024-06-01T15:14:16.000+02:00" />
<CLASSES />
<JAVADOC />
<SOURCES>
<root url="file://$USER_HOME$/.cache/JetBrains/Rider2024.3/projects/.idea.babushka.a4de4632/sdk/GdSdk Master" />
</SOURCES>
</library>
</component>
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://duaideiajsu8r"
path.s3tc="res://.godot/imported/babushka concept art vesna.png-93b9cf316889e012747999bc7ff6e108.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://art/Characters/Vesna/babushka concept art vesna.png"
dest_files=["res://.godot/imported/babushka concept art vesna.png-93b9cf316889e012747999bc7ff6e108.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
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

@@ -3,25 +3,26 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://bylgmr0skwtrs"
path="res://.godot/imported/broken tools atlas.png-ac2818c7b186429092a60cc6ac3b6431.ctex"
path.s3tc="res://.godot/imported/broken tools atlas.png-ac2818c7b186429092a60cc6ac3b6431.s3tc.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://art/farm/farming/farmobjekte/broken tools atlas.png"
dest_files=["res://.godot/imported/broken tools atlas.png-ac2818c7b186429092a60cc6ac3b6431.ctex"]
dest_files=["res://.godot/imported/broken tools atlas.png-ac2818c7b186429092a60cc6ac3b6431.s3tc.ctex"]
[params]
compress/mode=0
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=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -31,4 +32,4 @@ 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
detect_3d/compress_to=0
Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c4ggew55w0icj"
path.s3tc="res://.godot/imported/harke.png-ae5b280d25e62308e3ea6db5803e7742.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://art/farm/farming/farmobjekte/harke.png"
dest_files=["res://.godot/imported/harke.png-ae5b280d25e62308e3ea6db5803e7742.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
Binary file not shown.

After

Width:  |  Height:  |  Size: 675 KiB

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://x8hr8287ff2n"
path.s3tc="res://.godot/imported/tools atlas.png-6bb854eba7b52fe0263410000fb8738e.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://art/farm/farming/farmobjekte/tools atlas.png"
dest_files=["res://.godot/imported/tools atlas.png-6bb854eba7b52fe0263410000fb8738e.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
@@ -3,25 +3,26 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://ctvdxwgmfaj5c"
path="res://.godot/imported/nasse farming erde.png-b0f4616f6a155f8e5d49e54e16723440.ctex"
path.s3tc="res://.godot/imported/nasse farming erde.png-b0f4616f6a155f8e5d49e54e16723440.s3tc.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://art/farm/tilable grounds/böden/nasse farming erde.png"
dest_files=["res://.godot/imported/nasse farming erde.png-b0f4616f6a155f8e5d49e54e16723440.ctex"]
dest_files=["res://.godot/imported/nasse farming erde.png-b0f4616f6a155f8e5d49e54e16723440.s3tc.ctex"]
[params]
compress/mode=0
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=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@@ -31,4 +32,4 @@ 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
detect_3d/compress_to=0
+29 -13
View File
@@ -1,40 +1,56 @@
[gd_scene load_steps=5 format=3 uid="uid://dbd1niu3tp8y5"]
[ext_resource type="Script" uid="uid://cp4snd0amnhfu" path="res://scripts/CSharp/Common/Player3D.cs" id="1_3trg2"]
[ext_resource type="Texture2D" uid="uid://cvn2p215jq2am" path="res://art/mockups/concerned.png" id="1_5jpx2"]
[ext_resource type="Script" uid="uid://c81bn1w8o0n2n" path="res://scripts/CSharp/Common/CameraPivot.cs" id="3_3trg2"]
[ext_resource type="Script" uid="uid://b4ugrget2x6lb" path="res://scripts/CSharp/Common/CharacterControls/Player3D.cs" id="1_3trg2"]
[ext_resource type="Texture2D" uid="uid://duaideiajsu8r" path="res://art/Characters/Vesna/babushka concept art vesna.png" id="2_3trg2"]
[ext_resource type="Script" uid="uid://r5tahuqvbucy" path="res://scripts/CSharp/Common/Camera/CameraPivot.cs" id="3_3trg2"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1vdrh"]
radius = 0.0478421
height = 0.234557
height = 1.5
[node name="Player3d" type="Node3D"]
[node name="CharacterBody3D" type="CharacterBody3D" parent="." node_paths=PackedStringArray("_camera")]
[node name="CharacterBody3D" type="CharacterBody3D" parent="." node_paths=PackedStringArray("_camera", "_frontSprite", "_sideSprite")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
collision_layer = 16
collision_mask = 17
script = ExtResource("1_3trg2")
_speed = 10.0
_speed = 400.0
_camera = NodePath("CameraPivot2/SubPivot/Camera3D")
_frontSprite = NodePath("FrontSprite")
_sideSprite = NodePath("SideSprite")
[node name="Sprite" type="Sprite3D" parent="CharacterBody3D"]
transform = Transform3D(0.04, 0, 0, 0, 0.04, 0, 0, 0, 0.04, 0, 0.110813, 0)
[node name="FrontSprite" type="Sprite3D" parent="CharacterBody3D"]
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0, 0, 0)
billboard = 1
shaded = true
render_priority = 100
texture = ExtResource("1_5jpx2")
texture = ExtResource("2_3trg2")
region_enabled = true
region_rect = Rect2(52, 20, 648, 1175)
[node name="SideSprite" type="Sprite3D" parent="CharacterBody3D"]
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0, 0, 0)
visible = false
billboard = 1
shaded = true
render_priority = 100
texture = ExtResource("2_3trg2")
region_enabled = true
region_rect = Rect2(803, 17, 663, 1161)
[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.119886, 0)
shape = SubResource("CapsuleShape3D_1vdrh")
[node name="CameraPivot2" type="Node3D" parent="CharacterBody3D" node_paths=PackedStringArray("_subPivot")]
transform = Transform3D(1, 0, 0, 0, 0.93358, 0.358368, 0, -0.358368, 0.93358, 0, 0.159723, 0)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.159723, 0)
script = ExtResource("3_3trg2")
_subPivot = NodePath("SubPivot")
[node name="SubPivot" type="Node3D" parent="CharacterBody3D/CameraPivot2"]
[node name="Camera3D" type="Camera3D" parent="CharacterBody3D/CameraPivot2/SubPivot"]
transform = Transform3D(1, 0, 0, 0, 0.933581, 0.358368, 0, -0.358368, 0.933581, 0, 0.638658, 1.73382)
fov = 24.0844
transform = Transform3D(1, 0, 0, 0, 0.933581, 0.358368, 0, -0.358368, 0.933581, 0, 1, 1.734)
fov = 70.0
[node name="FarmingMechanic" type="Node3D" parent="CharacterBody3D"]
+20 -7
View File
@@ -1,20 +1,33 @@
[gd_scene load_steps=5 format=3 uid="uid://biwd3jj65qrlh"]
[gd_scene load_steps=6 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://dnu6bnwvhlfut" path="res://scripts/CSharp/Common/FieldBehaviour.cs" id="2_xctjk"]
[ext_resource type="Script" uid="uid://histmmyi1wr" path="res://scripts/CSharp/Common/Farming/FieldBehaviour.cs" id="2_u7egi"]
[ext_resource type="Texture2D" uid="uid://lvhbicmwqab5" path="res://art/farm/tilable grounds/böden/fruchtbarer wilder trockender boden.png" id="3_0rx5h"]
[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="Sprite3D"]
transform = Transform3D(0.5, 0, 0, 0, -2.18557e-08, -0.5, 0, 0.5, -2.18557e-08, 0, 0, 0)
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)
modulate = Color(0.690196, 0.690196, 0.690196, 1)
pixel_size = 0.004
texture = ExtResource("1_2cisk")
script = ExtResource("2_xctjk")
script = ExtResource("2_u7egi")
Untilled = ExtResource("3_0rx5h")
Tilled = ExtResource("1_2cisk")
[node name="Area51" parent="." instance=ExtResource("4_xc4m0")]
transform = Transform3D(2, 0, 0, 0, -8.74228e-08, 2, 0, -2, -8.74228e-08, 0.00334358, -0.3811, -0.120426)
[node name="InteractionArea" parent="." instance=ExtResource("4_xc4m0")]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0.00334358, -0.3811, -0.120426)
_showLabel = false
[connection signal="Interacted" from="Area51" to="." method="Farm"]
[node name="Area3D" parent="InteractionArea" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.381738)
[node name="CollisionShape3D" parent="InteractionArea/Area3D" index="0"]
shape = SubResource("SphereShape3D_u7egi")
[connection signal="Interacted" from="InteractionArea" to="." method="Farm"]
[editable path="InteractionArea"]
+25 -26
View File
@@ -1,24 +1,26 @@
[gd_scene load_steps=6 format=3 uid="uid://bjhj1wa5olwcu"]
[gd_scene load_steps=7 format=3 uid="uid://bjhj1wa5olwcu"]
[ext_resource type="Script" uid="uid://tm14kfypgn0h" path="res://scripts/CSharp/Common/PlantBehaviour.cs" id="1_1hc8u"]
[ext_resource type="Script" uid="uid://yfnjmuuxs3oq" path="res://scripts/CSharp/Common/Farming/PlantBehaviour.cs" id="1_l3nrf"]
[ext_resource type="Texture2D" uid="uid://dtr4uga5uspg" path="res://art/farm/farming/farmobjekte/tomaten/tomaten baby.png" id="2_7tw6v"]
[ext_resource type="Texture2D" uid="uid://b2gu6ur2xc7s4" path="res://art/farm/farming/farmobjekte/tomaten/tomaten blume.png" id="3_6u2og"]
[ext_resource type="Texture2D" uid="uid://cnwd3mb3jnuxm" path="res://art/farm/farming/farmobjekte/tomaten/teen adulte tomaten.png" id="4_1pcfs"]
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="5_6kt4q"]
[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")]
transform = Transform3D(0.5, 0, 0, 0, -2.18557e-08, -0.5, 0, 0.5, -2.18557e-08, 0, 0, 0)
script = ExtResource("1_1hc8u")
script = ExtResource("1_l3nrf")
_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(5, 0, 0, 0, 5, 0, 0, 0, 5, -0.216614, 1.20629, -0.992401)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
[node name="TomatoSeed" type="Sprite3D" parent="Seeds"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
flip_v = true
billboard = 1
@@ -28,7 +30,6 @@ region_enabled = true
region_rect = Rect2(-2, 15, 85, 81)
[node name="TomatoSeed2" type="Sprite3D" parent="Seeds"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
flip_v = true
billboard = 1
@@ -38,7 +39,6 @@ region_enabled = true
region_rect = Rect2(15, 177, 84, 108)
[node name="TomatoSeed3" type="Sprite3D" parent="Seeds"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
flip_v = true
billboard = 1
@@ -48,10 +48,9 @@ region_enabled = true
region_rect = Rect2(3, 337, 85, 82)
[node name="SmallPlant" type="Node3D" parent="."]
transform = Transform3D(5, 0, 0, 0, 5, 0, 0, 0, 5, 0.844819, 1.20629, -1.44874)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
[node name="01" type="Sprite3D" parent="SmallPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
billboard = 1
render_priority = 3
@@ -60,7 +59,6 @@ region_enabled = true
region_rect = Rect2(203, 1, 128, 164)
[node name="02" type="Sprite3D" parent="SmallPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.206227)
visible = false
billboard = 1
render_priority = 3
@@ -69,7 +67,6 @@ region_enabled = true
region_rect = Rect2(218, 204, 112, 130)
[node name="03" type="Sprite3D" parent="SmallPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
billboard = 1
render_priority = 3
@@ -78,7 +75,6 @@ region_enabled = true
region_rect = Rect2(224, 399, 105, 105)
[node name="04" type="Sprite3D" parent="SmallPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
billboard = 1
render_priority = 3
@@ -87,11 +83,11 @@ region_enabled = true
region_rect = Rect2(228, 600, 85, 92)
[node name="BigPlant" type="Node3D" parent="."]
transform = Transform3D(5, 0, 0, 0, 5, 0, 0, 0, 5, 0.844819, 1.20629, -1.44874)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
[node name="01" type="Sprite3D" parent="BigPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("3_6u2og")
@@ -99,8 +95,8 @@ region_enabled = true
region_rect = Rect2(-8, 1, 498, 682)
[node name="02" type="Sprite3D" parent="BigPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.206227)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("3_6u2og")
@@ -108,8 +104,8 @@ region_enabled = true
region_rect = Rect2(575, 82, 516, 591)
[node name="03" type="Sprite3D" parent="BigPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("3_6u2og")
@@ -117,8 +113,8 @@ region_enabled = true
region_rect = Rect2(-25, 694, 521, 687)
[node name="04" type="Sprite3D" parent="BigPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, -0.211124, -0.20353, 0.188503)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("3_6u2og")
@@ -126,20 +122,20 @@ region_enabled = true
region_rect = Rect2(546, 697, 535, 687)
[node name="ReadyPlant" type="Node3D" parent="."]
transform = Transform3D(5, 0, 0, 0, 5, 0, 0, 0, 5, 0, 0, -3.967)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.3, 0)
[node name="01" type="Sprite3D" parent="ReadyPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("4_1pcfs")
region_enabled = true
region_rect = Rect2(399, 35, 678, 796)
region_rect = Rect2(399, 3, 679, 808)
[node name="02" type="Sprite3D" parent="ReadyPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("4_1pcfs")
@@ -147,8 +143,8 @@ region_enabled = true
region_rect = Rect2(1077, 109, 633, 695)
[node name="03" type="Sprite3D" parent="ReadyPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("4_1pcfs")
@@ -156,8 +152,8 @@ region_enabled = true
region_rect = Rect2(415, 838, 639, 817)
[node name="04" type="Sprite3D" parent="ReadyPlant"]
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0, 0)
visible = false
pixel_size = 0.007
billboard = 1
render_priority = 3
texture = ExtResource("4_1pcfs")
@@ -165,7 +161,10 @@ region_enabled = true
region_rect = Rect2(1167, 863, 528, 785)
[node name="InteractionArea" parent="." instance=ExtResource("5_6kt4q")]
transform = Transform3D(2.475, 0, 0, 0, 2.475, 0, 0, 0, 2.475, 0, 0, 0)
_showLabel = false
[node name="CollisionShape3D" parent="InteractionArea/Area3D" index="0"]
shape = SubResource("SphereShape3D_l3nrf")
[connection signal="Interacted" from="InteractionArea" to="." method="Grow"]
[editable path="InteractionArea"]
+7 -6
View File
@@ -1,9 +1,9 @@
[gd_scene load_steps=3 format=3 uid="uid://ob04y3syvo0e"]
[ext_resource type="Script" uid="uid://cgkea4bmd6a8f" path="res://scripts/CSharp/Common/InteractionArea.cs" id="1_b15wn"]
[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"]
radius = 1.0
resource_local_to_scene = true
[node name="InteractionArea" type="Node3D" node_paths=PackedStringArray("_area", "_label")]
script = ExtResource("1_b15wn")
@@ -17,14 +17,15 @@ collision_mask = 16
shape = SubResource("SphereShape3D_i8sim")
[node name="Label3D" type="Label3D" parent="."]
visible = false
sorting_offset = 100.0
pixel_size = 0.001
pixel_size = 0.01
billboard = 1
no_depth_test = true
fixed_size = true
text = "<E>"
font_size = 98
outline_size = 22
text = "[E]"
font_size = 60
outline_size = 10
[connection signal="body_entered" from="Area3D" to="." method="OnPlayerEntered"]
[connection signal="body_exited" from="Area3D" to="." method="OnPlayerExited"]
+1 -1
View File
@@ -11,7 +11,7 @@ config_version=5
[application]
config/name="Babushka"
run/main_scene="res://scenes/testing/abandoned_street_3d.tscn"
run/main_scene="uid://br7yq757cawts"
config/features=PackedStringArray("4.4", "C#", "Forward Plus")
config/icon="res://icon.svg"
+35 -4
View File
@@ -1,8 +1,12 @@
[gd_scene load_steps=7 format=3 uid="uid://br7yq757cawts"]
[gd_scene load_steps=11 format=3 uid="uid://br7yq757cawts"]
[ext_resource type="PackedScene" uid="uid://dbd1niu3tp8y5" path="res://prefabs/Player3D.tscn" id="1_b1ibi"]
[ext_resource type="PackedScene" uid="uid://biwd3jj65qrlh" path="res://prefabs/farming/base_field.tscn" id="2_72r8y"]
[ext_resource type="Texture2D" uid="uid://lvhbicmwqab5" path="res://art/farm/tilable grounds/böden/fruchtbarer wilder trockender boden.png" id="3_0ptl4"]
[ext_resource type="PackedScene" uid="uid://bjhj1wa5olwcu" path="res://prefabs/farming/base_plant.tscn" id="3_oyw0x"]
[ext_resource type="PackedScene" uid="uid://ob04y3syvo0e" path="res://prefabs/interaction_area.tscn" id="4_r4sre"]
[ext_resource type="Texture2D" uid="uid://c4ggew55w0icj" path="res://art/farm/farming/farmobjekte/harke.png" id="5_0ptl4"]
[ext_resource type="Script" uid="uid://v34pl0nlp4x" path="res://scripts/CSharp/Common/SpriteSwitcher.cs" id="6_jg3xi"]
[sub_resource type="PlaneMesh" id="PlaneMesh_8yprl"]
@@ -27,13 +31,40 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.000976563, -0.0739136, -0.
shape = SubResource("BoxShape3D_t58di")
[node name="Player3d" parent="." instance=ExtResource("1_b1ibi")]
transform = Transform3D(10, 0, 0, 0, 10, 0, 0, 0, 10, -4.80632, 0.0702609, 3.57249)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.80632, 0.725631, 3.57249)
[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_72r8y")]
transform = Transform3D(0.5, 0, 0, 0, -2.18557e-08, -0.5, 0, 0.5, -2.18557e-08, -2.26145, 0.0702609, 4.04213)
transform = Transform3D(0.5, 0, 0, 0, -2.18557e-08, -0.5, 0, 0.5, -2.18557e-08, 0, 0.001, 0)
texture = ExtResource("3_0ptl4")
[node name="BasePlant" parent="BaseField" instance=ExtResource("3_oyw0x")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0481086, -0.424278, 0.0145219)
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
top_level = true
[node name="HoePickup" parent="." instance=ExtResource("4_r4sre")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, -5.32907e-15, 0, 5.32907e-15, 0.5, -4.32699, 1.8523, -3.4472)
[node name="Hoe on" type="Sprite3D" parent="HoePickup"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.138896, 0)
modulate = Color(0, 0.996078, 0, 1)
billboard = 1
texture = ExtResource("5_0ptl4")
region_rect = Rect2(484, 143, 365, 1317)
[node name="Hoe off" type="Sprite3D" parent="HoePickup"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.138896, 0)
visible = false
modulate = Color(1, 0, 0, 1)
billboard = 1
texture = ExtResource("5_0ptl4")
region_rect = Rect2(421, 0, 539, 965)
[node name="SpriteSwitcher" type="Node3D" parent="HoePickup" node_paths=PackedStringArray("_TrueSprite", "_FalseSprite")]
script = ExtResource("6_jg3xi")
_TrueSprite = NodePath("../Hoe on")
_FalseSprite = NodePath("../Hoe off")
[connection signal="Interacted" from="HoePickup" to="HoePickup/SpriteSwitcher" method="SwitchState"]
@@ -1,6 +1,6 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.Camera;
public partial class CameraController : Camera2D
{
@@ -0,0 +1 @@
uid://bqomwxclsbhd3
@@ -1,6 +1,6 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.Camera;
public partial class CameraPivot : Node3D
{
@@ -0,0 +1 @@
uid://r5tahuqvbucy
@@ -1,6 +1,6 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.CharacterControls;
public partial class InteractionArea : Node3D
{
@@ -0,0 +1 @@
uid://dumwt7lledufm
@@ -1,6 +1,6 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.CharacterControls;
public partial class Player2D : Node2D
{
@@ -0,0 +1 @@
uid://cjbclkxesh3hc
@@ -0,0 +1,79 @@
using Godot;
namespace Babushka.scripts.CSharp.Common.CharacterControls;
public partial class Player3D : CharacterBody3D
{
[Export] private float _speed = 1.0f;
[Export] private Camera3D _camera;
[Export] private Sprite3D _frontSprite;
[Export] private Sprite3D _sideSprite;
private bool _sideFlipped;
public override void _PhysicsProcess(double delta)
{
var inputDir = Input.GetVector("move_left", "move_right", "move_up", "move_down");
if (inputDir == Vector2.Zero)
return;
MoveOnInput(inputDir, delta);
SwitchSprites(inputDir);
}
private void MoveOnInput(Vector2 inputDir, double delta)
{
inputDir = inputDir.Rotated(-_camera.GlobalRotation.Y);
var direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y)).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 SwitchSprites(Vector2 inputDir)
{
float X = inputDir.X;
float Y = inputDir.Y;
if (X == 0.0 && Y == 0.0)
{
ActivateFrontSprite(true);
return;
}
if (X != 0)
{
ActivateFrontSprite(false);
if (X > 0.0f)
{
_sideFlipped = false;
_sideSprite.FlipH = _sideFlipped;
}
if (X < 0.0f)
{
_sideFlipped = true;
_sideSprite.FlipH = _sideFlipped;
}
return;
}
if (Y != 0)
{
ActivateFrontSprite(true);
}
}
private void ActivateFrontSprite(bool activate)
{
_frontSprite.Visible = activate;
_sideSprite.Visible = !activate;
}
}
@@ -0,0 +1 @@
uid://b4ugrget2x6lb
@@ -0,0 +1,8 @@
using Godot;
namespace Babushka.scripts.CSharp.Common.Farming;
public partial class FarmingControls : Node3D
{
}
@@ -0,0 +1 @@
uid://b1sscdr4ptec8
@@ -1,6 +1,6 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.Farming;
public enum FieldState
{
@@ -0,0 +1 @@
uid://histmmyi1wr
@@ -1,7 +1,7 @@
using System;
using Godot;
namespace Babushka.scripts.CSharp.Common;
namespace Babushka.scripts.CSharp.Common.Farming;
public enum PlantState
{
@@ -0,0 +1 @@
uid://yfnjmuuxs3oq
-28
View File
@@ -1,28 +0,0 @@
using Godot;
namespace Babushka.scripts.CSharp.Common;
public partial class Player3D : CharacterBody3D
{
[Export] private float _speed = 1.0f;
[Export] private Camera3D _camera;
public override void _PhysicsProcess(double delta)
{
if (!IsOnFloor()) Velocity += Vector3.Down * (float) delta;
var inputDir = Input.GetVector("move_left", "move_right", "move_up", "move_down");
inputDir = inputDir.Rotated(-_camera.GlobalRotation.Y);
var direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y)).Normalized();
if (direction != Vector3.Zero)
{
Velocity = new Vector3(direction.X * _speed, Velocity.Y, direction.Z * _speed * (float) delta * Scale.X);
}
else
{
Velocity = Velocity.MoveToward(new Vector3(0, 0, 0), _speed);
}
MoveAndSlide();
}
}
+36
View File
@@ -0,0 +1,36 @@
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;
public override void _Ready()
{
SetState();
}
public void SwitchState()
{
_state = !_state;
SetState();
}
private void SetState()
{
if (_state)
{
_TrueSprite.Visible = true;
}
else
{
_FalseSprite.Visible = false;
}
}
}
@@ -0,0 +1 @@
uid://v34pl0nlp4x