diff --git a/Babushka.sln.DotSettings.user b/Babushka.sln.DotSettings.user
index 4e7cbcc..aa9f6ba 100644
--- a/Babushka.sln.DotSettings.user
+++ b/Babushka.sln.DotSettings.user
@@ -2,4 +2,5 @@
ForceIncluded
ForceIncluded
ForceIncluded
+ ForceIncluded
ForceIncluded
\ No newline at end of file
diff --git a/art/animals/duck_flapFlap.res b/art/animals/duck_flapFlap.res
new file mode 100644
index 0000000..89792f7
Binary files /dev/null and b/art/animals/duck_flapFlap.res differ
diff --git a/art/animals/katze.png b/art/animals/katze.png
new file mode 100644
index 0000000..338f59d
Binary files /dev/null and b/art/animals/katze.png differ
diff --git a/art/animals/katze.png.import b/art/animals/katze.png.import
new file mode 100644
index 0000000..e83546d
--- /dev/null
+++ b/art/animals/katze.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c4q12jiligcl7"
+path="res://.godot/imported/katze.png-0faf4775b24cd38949e4c4160b5ed047.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://art/animals/katze.png"
+dest_files=["res://.godot/imported/katze.png-0faf4775b24cd38949e4c4160b5ed047.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/zaun/fence_door.png b/art/farm/farming/farmobjekte/zaun/fence_door.png
new file mode 100644
index 0000000..2be9765
Binary files /dev/null and b/art/farm/farming/farmobjekte/zaun/fence_door.png differ
diff --git a/art/farm/farming/farmobjekte/zaun/fence_door.png.import b/art/farm/farming/farmobjekte/zaun/fence_door.png.import
new file mode 100644
index 0000000..ee3a64e
--- /dev/null
+++ b/art/farm/farming/farmobjekte/zaun/fence_door.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://blb3agipyxnal"
+path="res://.godot/imported/fence_door.png-19eb021073131bf04d1c242c32b3c026.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://art/farm/farming/farmobjekte/zaun/fence_door.png"
+dest_files=["res://.godot/imported/fence_door.png-19eb021073131bf04d1c242c32b3c026.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/indoor/Babushka_bg_01.png b/art/indoor/Babushka_bg_01.png
new file mode 100644
index 0000000..a7db0fe
Binary files /dev/null and b/art/indoor/Babushka_bg_01.png differ
diff --git a/art/indoor/Babushka_bg_01.png.import b/art/indoor/Babushka_bg_01.png.import
new file mode 100644
index 0000000..cad4ea0
--- /dev/null
+++ b/art/indoor/Babushka_bg_01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cugtxcfuds31r"
+path="res://.godot/imported/Babushka_bg_01.png-0c232a7f5bf4d34c794d027da500ca6b.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://art/indoor/Babushka_bg_01.png"
+dest_files=["res://.godot/imported/Babushka_bg_01.png-0c232a7f5bf4d34c794d027da500ca6b.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/audio/Atmos/Farm_Atmos_01.wav.import b/audio/Atmos/Farm_Atmos_01.wav.import
index 591daa9..f6c57a4 100644
--- a/audio/Atmos/Farm_Atmos_01.wav.import
+++ b/audio/Atmos/Farm_Atmos_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://pbbasdulkfnx"
+uid="uid://fuavnxdlkvl8"
path="res://.godot/imported/Farm_Atmos_01.wav-20c6c4add43e27385e7f86d343fe1b56.sample"
[deps]
diff --git a/audio/Atmos/Farm_Atmos_02.wav.import b/audio/Atmos/Farm_Atmos_02.wav.import
index 4d0f84f..40bba90 100644
--- a/audio/Atmos/Farm_Atmos_02.wav.import
+++ b/audio/Atmos/Farm_Atmos_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bqfnt37cjtmd8"
+uid="uid://mldqt8yqiv8b"
path="res://.godot/imported/Farm_Atmos_02.wav-d5684977761618a4d81d2cbf5c069420.sample"
[deps]
diff --git a/audio/Atmos/Farm_Atmos_03.wav.import b/audio/Atmos/Farm_Atmos_03.wav.import
index 7c49e07..c01f832 100644
--- a/audio/Atmos/Farm_Atmos_03.wav.import
+++ b/audio/Atmos/Farm_Atmos_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c46nyk50my16x"
+uid="uid://chj4qsypn7u0n"
path="res://.godot/imported/Farm_Atmos_03.wav-a17f99633103cade836fb0f8d597fbfb.sample"
[deps]
diff --git a/audio/Atmos/Farm_Atmos_04.wav.import b/audio/Atmos/Farm_Atmos_04.wav.import
index 542f101..2d072af 100644
--- a/audio/Atmos/Farm_Atmos_04.wav.import
+++ b/audio/Atmos/Farm_Atmos_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bckc2j5dgkcg5"
+uid="uid://dtcqvywfejavv"
path="res://.godot/imported/Farm_Atmos_04.wav-66ff00335a3bd5e5785df048a07bf37d.sample"
[deps]
diff --git a/audio/Atmos/Farm_Atmos_05.wav.import b/audio/Atmos/Farm_Atmos_05.wav.import
index 66f2327..eb92b65 100644
--- a/audio/Atmos/Farm_Atmos_05.wav.import
+++ b/audio/Atmos/Farm_Atmos_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cp4rm471g041v"
+uid="uid://d2nxnokvxori2"
path="res://.godot/imported/Farm_Atmos_05.wav-caac29acb0f4cdae07bd26eed0bd888a.sample"
[deps]
diff --git a/audio/Atmos/Farm_Atmos_06.wav.import b/audio/Atmos/Farm_Atmos_06.wav.import
index 284817d..e984b40 100644
--- a/audio/Atmos/Farm_Atmos_06.wav.import
+++ b/audio/Atmos/Farm_Atmos_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dexcthtlg58h"
+uid="uid://4gfikuje6o2b"
path="res://.godot/imported/Farm_Atmos_06.wav-7cf794493216191f5afba72d0f586825.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Meow_01.wav.import b/audio/sfx/Animals/SFX_Cat_Meow_01.wav.import
index 7a9a783..8ad2c91 100644
--- a/audio/sfx/Animals/SFX_Cat_Meow_01.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Meow_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bcm0aulqw8mg"
+uid="uid://cohyenfo1rtxh"
path="res://.godot/imported/SFX_Cat_Meow_01.wav-79c1acbbdca92637dbba4b3257094063.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Meow_02.wav.import b/audio/sfx/Animals/SFX_Cat_Meow_02.wav.import
index eaede92..5656171 100644
--- a/audio/sfx/Animals/SFX_Cat_Meow_02.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Meow_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://x6o5r6ae1jw1"
+uid="uid://b2cmf5ie7cwka"
path="res://.godot/imported/SFX_Cat_Meow_02.wav-f81f0a3617846c08ad8de7deb64acd47.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Meow_03.wav.import b/audio/sfx/Animals/SFX_Cat_Meow_03.wav.import
index 398335f..b08c18c 100644
--- a/audio/sfx/Animals/SFX_Cat_Meow_03.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Meow_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bo2kmxbs6y1kx"
+uid="uid://cttisejnt2l8f"
path="res://.godot/imported/SFX_Cat_Meow_03.wav-dbdea32b6d1e8a5d289470ef35791fa6.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Meow_04.wav.import b/audio/sfx/Animals/SFX_Cat_Meow_04.wav.import
index 340d670..d5bff95 100644
--- a/audio/sfx/Animals/SFX_Cat_Meow_04.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Meow_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ch7xxxdjsg3tp"
+uid="uid://cbmagiou0n0t3"
path="res://.godot/imported/SFX_Cat_Meow_04.wav-dca108aced3de3497de35629adca37b9.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Meow_05.wav.import b/audio/sfx/Animals/SFX_Cat_Meow_05.wav.import
index 82b1f53..6dc7f3c 100644
--- a/audio/sfx/Animals/SFX_Cat_Meow_05.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Meow_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://by4sp0ijm8ptl"
+uid="uid://bk1bj01fokjp7"
path="res://.godot/imported/SFX_Cat_Meow_05.wav-3fb0acc88ea4a0befe6fb64963b6fd42.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Cat_Purr_01.wav.import b/audio/sfx/Animals/SFX_Cat_Purr_01.wav.import
index 54a37eb..524903e 100644
--- a/audio/sfx/Animals/SFX_Cat_Purr_01.wav.import
+++ b/audio/sfx/Animals/SFX_Cat_Purr_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://qokgcllxjs5b"
+uid="uid://r2f6xmjvyyjv"
path="res://.godot/imported/SFX_Cat_Purr_01.wav-35ce2557de0fd94ac910b5431e4d2551.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Quack_01.wav.import b/audio/sfx/Animals/SFX_Duck_Quack_01.wav.import
index f666404..661c9c8 100644
--- a/audio/sfx/Animals/SFX_Duck_Quack_01.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Quack_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ccsi8mxbgdn3g"
+uid="uid://qv0aubjeyi0u"
path="res://.godot/imported/SFX_Duck_Quack_01.wav-b3154d96ae192ab719babe991e82636d.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Quack_02.wav.import b/audio/sfx/Animals/SFX_Duck_Quack_02.wav.import
index 997c65e..8456dd2 100644
--- a/audio/sfx/Animals/SFX_Duck_Quack_02.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Quack_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://mxkoyr4r1kht"
+uid="uid://da84l8e44scwh"
path="res://.godot/imported/SFX_Duck_Quack_02.wav-9d471542607749e832c769e451c423c8.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Quack_03.wav.import b/audio/sfx/Animals/SFX_Duck_Quack_03.wav.import
index 1b0aa4f..3979590 100644
--- a/audio/sfx/Animals/SFX_Duck_Quack_03.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Quack_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c08kqc8lwjf41"
+uid="uid://bkx4vyigy0u0e"
path="res://.godot/imported/SFX_Duck_Quack_03.wav-190f92c13d63a71feb0768351a94fb82.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Quack_04.wav.import b/audio/sfx/Animals/SFX_Duck_Quack_04.wav.import
index d3dbea2..af2bc2f 100644
--- a/audio/sfx/Animals/SFX_Duck_Quack_04.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Quack_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://fbpcjvrnwngp"
+uid="uid://b5o5bu5to04dw"
path="res://.godot/imported/SFX_Duck_Quack_04.wav-6edba930dccaebf850c91a6f7d22f4f1.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_01.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_01.wav.import
index 516b9c4..b8b62f8 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_01.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://lghv8tu60w4m"
+uid="uid://dy7y1p1fdl3qi"
path="res://.godot/imported/SFX_Duck_Wings_01.wav-03498cac5d7190678606973b8d70b5a5.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_02.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_02.wav.import
index 38d294d..e4b19e9 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_02.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://chuuofwftp7o"
+uid="uid://c0pea16pvgyom"
path="res://.godot/imported/SFX_Duck_Wings_02.wav-5ec177737ff700143c1c3ae8cdfe7a6d.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_03.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_03.wav.import
index 99ed7de..1b5102c 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_03.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://do4r00xt0p52d"
+uid="uid://bccwhl0pu3b2v"
path="res://.godot/imported/SFX_Duck_Wings_03.wav-b329206b32d013d3c971a3f3ead560a7.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_04.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_04.wav.import
index 727377a..e6761e0 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_04.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://d4mwlbbswbja2"
+uid="uid://bixloi5fuoubu"
path="res://.godot/imported/SFX_Duck_Wings_04.wav-491ccb2a7f4345389c661d0fcf4f98f9.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_05.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_05.wav.import
index f294dd5..4c5c01b 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_05.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bwrvraltfwqw1"
+uid="uid://g8xhunjfhwde"
path="res://.godot/imported/SFX_Duck_Wings_05.wav-885b59a1c56001466405f946de1f1ee3.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_06.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_06.wav.import
index 8106aa0..8eea1c2 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_06.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b64syq7ixj1hk"
+uid="uid://u1ql6s2wep4y"
path="res://.godot/imported/SFX_Duck_Wings_06.wav-220cf53a9627e61f5c9724bb577fe6f6.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Duck_Wings_07.wav.import b/audio/sfx/Animals/SFX_Duck_Wings_07.wav.import
index 29c98d2..717050b 100644
--- a/audio/sfx/Animals/SFX_Duck_Wings_07.wav.import
+++ b/audio/sfx/Animals/SFX_Duck_Wings_07.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://djhwlrsk1n0kt"
+uid="uid://bsr5m8u2sle5k"
path="res://.godot/imported/SFX_Duck_Wings_07.wav-b8c62e45c1a6571f97064c1f8dedbbce.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolf_Bark_01.wav.import b/audio/sfx/Animals/SFX_Wolf_Bark_01.wav.import
index 62e046e..3ac2899 100644
--- a/audio/sfx/Animals/SFX_Wolf_Bark_01.wav.import
+++ b/audio/sfx/Animals/SFX_Wolf_Bark_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://iqe40noh00oi"
+uid="uid://c33n3ij2y52no"
path="res://.godot/imported/SFX_Wolf_Bark_01.wav-e83524e11efadf2a2777bfd3ba2b297c.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolf_Howl_02.wav.import b/audio/sfx/Animals/SFX_Wolf_Howl_02.wav.import
index 81b75a3..88d37ad 100644
--- a/audio/sfx/Animals/SFX_Wolf_Howl_02.wav.import
+++ b/audio/sfx/Animals/SFX_Wolf_Howl_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ckvyl4vbjrj7w"
+uid="uid://dcspn204j52rl"
path="res://.godot/imported/SFX_Wolf_Howl_02.wav-5a74b707a8acc79cc841637cff7396be.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolf_Snarl_01.wav.import b/audio/sfx/Animals/SFX_Wolf_Snarl_01.wav.import
index 4ffd520..94b699c 100644
--- a/audio/sfx/Animals/SFX_Wolf_Snarl_01.wav.import
+++ b/audio/sfx/Animals/SFX_Wolf_Snarl_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dvhhcjskuuns6"
+uid="uid://dnp62atpcge8y"
path="res://.godot/imported/SFX_Wolf_Snarl_01.wav-0430b7c001bf763b365e379b170bf300.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolf_Snarl_02.wav.import b/audio/sfx/Animals/SFX_Wolf_Snarl_02.wav.import
index 5bea932..d73d865 100644
--- a/audio/sfx/Animals/SFX_Wolf_Snarl_02.wav.import
+++ b/audio/sfx/Animals/SFX_Wolf_Snarl_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://d187pys4uov1w"
+uid="uid://b3h0oktk5wold"
path="res://.godot/imported/SFX_Wolf_Snarl_02.wav-bafc5c649a9fc5d81d048dfda8ce9bc9.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolf_Snarl_03.wav.import b/audio/sfx/Animals/SFX_Wolf_Snarl_03.wav.import
index 62e70ce..2d481af 100644
--- a/audio/sfx/Animals/SFX_Wolf_Snarl_03.wav.import
+++ b/audio/sfx/Animals/SFX_Wolf_Snarl_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cl4tjrv7flkkd"
+uid="uid://2gcs1giqka18"
path="res://.godot/imported/SFX_Wolf_Snarl_03.wav-5d60f7354fa22b36813c3451f679b899.sample"
[deps]
diff --git a/audio/sfx/Animals/SFX_Wolfs_Howl_01.wav.import b/audio/sfx/Animals/SFX_Wolfs_Howl_01.wav.import
index 23a7cca..81894cb 100644
--- a/audio/sfx/Animals/SFX_Wolfs_Howl_01.wav.import
+++ b/audio/sfx/Animals/SFX_Wolfs_Howl_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dvksq1covb02n"
+uid="uid://ba8r5xmwinpvn"
path="res://.godot/imported/SFX_Wolfs_Howl_01.wav-323953f60db3fcc2f10895c8cd7b40d0.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_01.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_01.wav.import
index 4c5ad93..d2fdfcf 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_01.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://psb3lqeg7vvf"
+uid="uid://c1hw0ap71pyr6"
path="res://.godot/imported/SFX_Mavka_Hit_01.wav-ecf514ae1518a7c4bd917081ea589633.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_02.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_02.wav.import
index 7f93b9f..672aea1 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_02.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dwtfbjtayi22u"
+uid="uid://dre4ea6u0uqnw"
path="res://.godot/imported/SFX_Mavka_Hit_02.wav-c40751b9fa2aafa93d9cc23f6f8db242.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_03.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_03.wav.import
index 63a301c..153b2b9 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_03.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ctn27oxbbw3oi"
+uid="uid://bmirmauxwiyv5"
path="res://.godot/imported/SFX_Mavka_Hit_03.wav-c9ac309b3b50fa0aa3f4a6d8c2266bb4.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_01.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_01.wav.import
index 74370de..e611bbe 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_01.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cx0fki3kdwuex"
+uid="uid://b3htw5tldgd2h"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_01.wav-4b0c76dab356e7ceda5b4c87b65befad.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_02.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_02.wav.import
index 267225d..c1ed579 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_02.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://1r7pdw2vpw0d"
+uid="uid://b8o3p7jbq54mo"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_02.wav-53e474278c5da641f2a582a07d92ea35.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_03.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_03.wav.import
index 8f9b522..6166078 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_03.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://rl0oy5b31bt3"
+uid="uid://cyp20ky1dbjao"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_03.wav-fbab346e6ded07e11bfa0720ab9d9c1e.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_04.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_04.wav.import
index 866364a..b064fc6 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_04.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cwomfkowquws3"
+uid="uid://cc4ygix5ybaaq"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_04.wav-97d72d61ca4ff0c513e23cfcb27d7fb1.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_05.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_05.wav.import
index c85ec06..0fcba57 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_05.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c6m3oooxggdrr"
+uid="uid://bxp8a5lmby2v4"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_05.wav-82e3b18a47860ff0d5b8eb2d2e58b6cd.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_06.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_06.wav.import
index fae7e09..23fccfe 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_06.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://x7e2vgrrt58k"
+uid="uid://cpj8rkq5wufqe"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_06.wav-1950e844c368887d06f2f6bb06b4e415.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_07.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_07.wav.import
index 701aaf5..ef91ebd 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_07.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_07.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://06n55tja14tq"
+uid="uid://da88utd0exaly"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_07.wav-b8b4298d05e076b668e8cd45b5a76e5a.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_08.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_08.wav.import
index 88cc0b8..0fa679b 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_08.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_08.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://smdwu660hcs8"
+uid="uid://jc7x0lhhbs3h"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_08.wav-32c5226aaacd7b78887c60589d9303fd.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_09.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_09.wav.import
index 47c2299..59ed482 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_09.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_09.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://tnthkhlaay1t"
+uid="uid://cd3lvig22y4jw"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_09.wav-571a460f7fe49b5df38d57b5e43148b4.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_10.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_10.wav.import
index 78a749a..01af126 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_10.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Hit_Voice_10.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://n8njmw341hfi"
+uid="uid://c5cy6dvs52a0l"
path="res://.godot/imported/SFX_Mavka_Hit_Voice_10.wav-7d1e4c3809b4ac59bb4067afc8375398.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_01.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_01.wav.import
index d3f44a3..abf6b2b 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_01.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b77gr8cvx2kt6"
+uid="uid://d1e1s3in4e1r5"
path="res://.godot/imported/SFX_Mavka_Voice_01.wav-6514c40260e79442a02300e028de6bfb.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_02.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_02.wav.import
index 3a173ac..8c046af 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_02.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://y27qaxtl80mm"
+uid="uid://dvo3i2pudv1lv"
path="res://.godot/imported/SFX_Mavka_Voice_02.wav-c4a42a3475e57849daac8e0b1a324929.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_03.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_03.wav.import
index 4f9d903..5c3b18c 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_03.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b1x8crlhk1wr0"
+uid="uid://dqteeo2lbmnhi"
path="res://.godot/imported/SFX_Mavka_Voice_03.wav-7974afef513a6cabe047e20b0e53dd02.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_04.wav.import b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_04.wav.import
index 4ff282d..5a9bd60 100644
--- a/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_04.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Mavka_Voice_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cmpwlm1v667xu"
+uid="uid://dqxmeoxicwok7"
path="res://.godot/imported/SFX_Mavka_Voice_04.wav-269aa2524e0a111fb5b7c9c629011e27.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Root_Attack_Mavka.wav.import b/audio/sfx/Battle/Enemies/SFX_Root_Attack_Mavka.wav.import
index d448221..cbb1fa1 100644
--- a/audio/sfx/Battle/Enemies/SFX_Root_Attack_Mavka.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Root_Attack_Mavka.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bcawkvnyuwshl"
+uid="uid://cjbf3q5t0i0i8"
path="res://.godot/imported/SFX_Root_Attack_Mavka.wav-2f91ee4aa4166fc27b0848164bb80c32.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_01.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_01.wav.import
index a524554..7a54087 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_01.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ck860aognvjiy"
+uid="uid://c8uiptxm827ku"
path="res://.godot/imported/SFX_Slime_Hit_01.wav-b838dccfd317bc84d2d16bea3c47ae32.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_02.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_02.wav.import
index b4e9a5b..3ce9545 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_02.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dmhcgxv6sn161"
+uid="uid://bg51u0or3ul7g"
path="res://.godot/imported/SFX_Slime_Hit_02.wav-c766abb0607152e3b32bb2d73d68b749.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_03.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_03.wav.import
index f04d10e..195f1ed 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_03.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ce1utmiu100hl"
+uid="uid://csabdc4n0iaxl"
path="res://.godot/imported/SFX_Slime_Hit_03.wav-aba44e664b7a24a9f2a0886d24282c14.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_04.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_04.wav.import
index ba84664..1872f05 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_04.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bil36ggypcyow"
+uid="uid://ifvoiavti5i3"
path="res://.godot/imported/SFX_Slime_Hit_04.wav-541c7c90f0e246dfa1d219cc36b2c20c.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_05.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_05.wav.import
index ca6fd9f..f6d9809 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_05.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bclg5kpp42l5p"
+uid="uid://bywxqs1c5pvpv"
path="res://.godot/imported/SFX_Slime_Hit_05.wav-16e4a378048d07589824a3fdbeaedd14.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_01.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_01.wav.import
index 5ad0efe..b8ea312 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_01.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bxa6vjsh1wsds"
+uid="uid://bkphg1pfhu88c"
path="res://.godot/imported/SFX_Slime_Hit_V2_01.wav-762f694f3f20f540a0231f511617a885.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_02.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_02.wav.import
index 389a89e..bd67682 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_02.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://d4dt4rt1ktyul"
+uid="uid://ls4og1e2tiid"
path="res://.godot/imported/SFX_Slime_Hit_V2_02.wav-1fbddc40fd6dd4ff21d62cedcc443e69.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_03.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_03.wav.import
index 9129af1..3667d1d 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_03.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://ya7ue6m52l6n"
+uid="uid://x7cc5woop5ec"
path="res://.godot/imported/SFX_Slime_Hit_V2_03.wav-dee39d1e46fd7fbf870a79aaea7a44ec.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_04.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_04.wav.import
index b99244f..ea5a1cf 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_04.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cjbcbqxwe72pr"
+uid="uid://dw4orgkbsac8c"
path="res://.godot/imported/SFX_Slime_Hit_V2_04.wav-4341b949a9c7ab19dd3e9c8be842124f.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_05.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_05.wav.import
index 36703b8..768410c 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_05.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c8ihr40y1lijw"
+uid="uid://bpnx1h7s7sx6i"
path="res://.godot/imported/SFX_Slime_Hit_V2_05.wav-506569819b50aacbd8f3824ab8570ae3.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_06.wav.import b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_06.wav.import
index dfd6a42..59d9214 100644
--- a/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_06.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Slime_Hit_V2_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bypmpi5gyo1sv"
+uid="uid://xxa3rvsal5m6"
path="res://.godot/imported/SFX_Slime_Hit_V2_06.wav-59a12033e7645e078653351ef44f504d.sample"
[deps]
diff --git a/audio/sfx/Battle/Enemies/SFX_Water_Attack_Slimes.wav.import b/audio/sfx/Battle/Enemies/SFX_Water_Attack_Slimes.wav.import
index 9c37adf..ccdac1d 100644
--- a/audio/sfx/Battle/Enemies/SFX_Water_Attack_Slimes.wav.import
+++ b/audio/sfx/Battle/Enemies/SFX_Water_Attack_Slimes.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://4i6lp6ot3xf5"
+uid="uid://d1v012odga8pu"
path="res://.godot/imported/SFX_Water_Attack_Slimes.wav-53ea08815c3b99d57255a004f78cc6e5.sample"
[deps]
diff --git a/audio/sfx/Battle/SFX_Weapon_Swoosh_01.wav.import b/audio/sfx/Battle/SFX_Weapon_Swoosh_01.wav.import
index 957db5d..590f48f 100644
--- a/audio/sfx/Battle/SFX_Weapon_Swoosh_01.wav.import
+++ b/audio/sfx/Battle/SFX_Weapon_Swoosh_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cmw1yir41ly6a"
+uid="uid://jpkk1wynbudi"
path="res://.godot/imported/SFX_Weapon_Swoosh_01.wav-346fadefb74f508e1fdb346bf7d071d2.sample"
[deps]
diff --git a/audio/sfx/Battle/SFX_Weapon_Swoosh_02.wav.import b/audio/sfx/Battle/SFX_Weapon_Swoosh_02.wav.import
index 6eb10cf..18eac4a 100644
--- a/audio/sfx/Battle/SFX_Weapon_Swoosh_02.wav.import
+++ b/audio/sfx/Battle/SFX_Weapon_Swoosh_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://d0d4p6ve651jk"
+uid="uid://chp6vxjm878o3"
path="res://.godot/imported/SFX_Weapon_Swoosh_02.wav-3208707bda199945510f126525eb260f.sample"
[deps]
diff --git a/audio/sfx/Battle/SFX_Weapon_Swoosh_03.wav.import b/audio/sfx/Battle/SFX_Weapon_Swoosh_03.wav.import
index 1c809e8..f3938d6 100644
--- a/audio/sfx/Battle/SFX_Weapon_Swoosh_03.wav.import
+++ b/audio/sfx/Battle/SFX_Weapon_Swoosh_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bwa5s6vq7frj7"
+uid="uid://b4xdoenb72g5h"
path="res://.godot/imported/SFX_Weapon_Swoosh_03.wav-f91a7828549535a76a14b7eb6c562f5f.sample"
[deps]
diff --git a/audio/sfx/Battle/SFX_Weapon_Swoosh_04.wav.import b/audio/sfx/Battle/SFX_Weapon_Swoosh_04.wav.import
index a76eb20..b536248 100644
--- a/audio/sfx/Battle/SFX_Weapon_Swoosh_04.wav.import
+++ b/audio/sfx/Battle/SFX_Weapon_Swoosh_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c85t5hgkrw7wd"
+uid="uid://703iwetq7xsk"
path="res://.godot/imported/SFX_Weapon_Swoosh_04.wav-f4f2de4fb883317c438ed0dc3be4e292.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_01.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_01.wav.import
index 06bf181..e2b6584 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_01.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c3kuyx3rvhvt5"
+uid="uid://3svj6pu2u626"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_01.wav-35f1c23e0d46950b6935b8fbd425e9f6.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_02.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_02.wav.import
index ca1751c..2f1dead 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_02.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bsachridl87wi"
+uid="uid://dulaymqjfkfk4"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_02.wav-6071843316c09e5039bc00094d1f240a.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_03.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_03.wav.import
index e4e6df6..c373e82 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_03.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://0fxncq0l5dj7"
+uid="uid://bo07fvuf5jivq"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_03.wav-71ee9d8905bcc1e7e30698387798322c.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_04.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_04.wav.import
index cdf24dd..d97c82d 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_04.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bjmyose6dedsb"
+uid="uid://ccionrfr6e3lb"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_04.wav-23f70cf75c46d2d122c4af82511ed61d.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_05.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_05.wav.import
index 2f15344..353836c 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_05.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dpcffkb3gsu13"
+uid="uid://cex1vthyc2855"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_05.wav-d941230c96b45addd5d70d96befceddd.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_06.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_06.wav.import
index fe5ebe3..1535d3b 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_06.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dofjwc4h80kmf"
+uid="uid://d3jty5k2t3s0u"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_06.wav-56bbd75b9744b9c3b463a0c8aa7a990d.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_07.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_07.wav.import
index 012679e..6744458 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_07.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_07.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dukcji5huig2k"
+uid="uid://b12i0ik5qymi"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_07.wav-2fc1f55533967112aed5707b69db1b06.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_08.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_08.wav.import
index 21a4497..117dd7d 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_08.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_08.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bog5ox62t03rm"
+uid="uid://ckyc62xsv8t56"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_08.wav-af8b9e9fbc37e7c99ce401cc94d3549c.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_09.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_09.wav.import
index f49c148..cc43c6c 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_09.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_09.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cs37i7mbpaqss"
+uid="uid://bhqjunlbt2qrc"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_09.wav-91cacf5f3b6024b4f734a4a164cefecb.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_10.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_10.wav.import
index 8db3773..9a230c6 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_10.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_10.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://da07w4dos00q8"
+uid="uid://dtq70bl1bgwma"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_10.wav-b6eee6f02d38ff6323fa2cf73f9933bd.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_11.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_11.wav.import
index 57512b5..5789086 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_11.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_11.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bscrsyowdtppw"
+uid="uid://47g4sryk7gvp"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_11.wav-80da32e09c04192a955881b1e7fc9d34.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_12.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_12.wav.import
index 3029eb7..a8750ff 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_12.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_12.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cu4bpeyfpw8d2"
+uid="uid://c2y4dlgir6qeh"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_12.wav-795799237f90c894e1fc5d85b4604680.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_13.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_13.wav.import
index c6de494..0316b7f 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_13.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Attack_13.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b0sh86g7h2jr1"
+uid="uid://c3jqoef405tn8"
path="res://.godot/imported/SFX_Battle_Vesna_Attack_13.wav-68b457f5d4bdcaeab852bed3d7830c4b.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_01.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_01.wav.import
index ba3f4f1..d8eaf0d 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_01.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://balemibcshwr6"
+uid="uid://bgv7s3f4iqfri"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_01.wav-10eb3269fa5daea380cdf7f05d9ccb67.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_02.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_02.wav.import
index 035fc08..cf9a217 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_02.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dicocvac0ny2e"
+uid="uid://bd5c5ynyroqse"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_02.wav-75fe72b1d69684f0bc30ea8f1462cd5a.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_03.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_03.wav.import
index 9352274..e6e7cbf 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_03.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b30cuq58vuqma"
+uid="uid://bssthpum46q50"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_03.wav-5f942f0a7d2d3af3e4b5aa46bc16e252.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_04.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_04.wav.import
index 066fbb1..fb33ce6 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_04.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://du1afw4xnd2rh"
+uid="uid://b5wtaj6fnf82s"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_04.wav-37f462e39cd25175a030cf755d609c6e.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_05.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_05.wav.import
index b2d477e..84ee811 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_05.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bqp8sp3bqilfq"
+uid="uid://bs6v2wdeyvhbm"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_05.wav-b0addf3e3f3a63862ca621ad385b9e2f.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_06.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_06.wav.import
index a50a661..2dbb203 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_06.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bdgn5045mk4ub"
+uid="uid://dc4504laj6ca2"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_06.wav-c3520973d484af728536a56b93fd9735.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_07.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_07.wav.import
index 266f522..77ebb98 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_07.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_07.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://btjeey4m3cij1"
+uid="uid://cobpvk4eqvkb1"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_07.wav-11018a9185320846e0c0fec499ee56c0.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_08.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_08.wav.import
index ee41e1e..82f2969 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_08.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_08.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://pvqav5xbin5r"
+uid="uid://ch4c1wh4ghxyo"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_08.wav-a78a056cf25a9d780c0de674b52c2a0f.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_09.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_09.wav.import
index 3c3c70c..fbd9f2c 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_09.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_09.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://025hw1trmh5f"
+uid="uid://cvg0yaqe440r8"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_09.wav-e7bd6df22492a8710ceb22eca6c82467.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_10.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_10.wav.import
index 3c95264..f1fa95d 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_10.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_10.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://di7r5idotvdw3"
+uid="uid://4tsht0w1dbjy"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_10.wav-a9e1b859507b6975986a2b27744502d1.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_11.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_11.wav.import
index 31825f9..62fd581 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_11.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_11.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cjobr1ffe77jk"
+uid="uid://byusus0yketn8"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_11.wav-a491eac13b0bf1931182a5969fcd9550.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_12.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_12.wav.import
index 3d3983f..391902b 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_12.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_12.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cgf43xxuw4d7n"
+uid="uid://bweh0v45eko43"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_12.wav-a80759f40c0463a6a65eb8208a45959d.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_13.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_13.wav.import
index 6575015..7bab5a5 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_13.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_13.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cs0v2g6x1gyi0"
+uid="uid://piht3eu8vfps"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_13.wav-8cdd9f63d079b17c528a829cb97f561f.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_14.wav.import b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_14.wav.import
index 2955d04..fc5dd42 100644
--- a/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_14.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Battle_Vesna_Defense_14.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://df1oo3qlrb6g8"
+uid="uid://dv8hv4fij8ya5"
path="res://.godot/imported/SFX_Battle_Vesna_Defense_14.wav-7de12bb13501cf38122a357b6da98eaf.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_01.wav.import b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_01.wav.import
index 8edbdea..d9f4a83 100644
--- a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_01.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://djtuqcg7lj6wm"
+uid="uid://daljxnpnh2wit"
path="res://.godot/imported/SFX_Magic_Healing_01.wav-51150f892e77f3b70d0b141b0f479950.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_02_fast.wav.import b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_02_fast.wav.import
index db01ce3..fae3d76 100644
--- a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_02_fast.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_02_fast.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bbdmgf0g1mwbi"
+uid="uid://cw8a1wuqbgtnr"
path="res://.godot/imported/SFX_Magic_Healing_02_fast.wav-166cee8ec4cc6c8be4364098e7e7e459.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_03.wav.import b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_03.wav.import
index 8d4f4f5..b1ac351 100644
--- a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_03.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cj3wldhamvvbd"
+uid="uid://borfo2ggcabeb"
path="res://.godot/imported/SFX_Magic_Healing_03.wav-77f4600a786f9bd17e7118b68cd8a833.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_04_fast.wav.import b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_04_fast.wav.import
index f111f9a..94f945c 100644
--- a/audio/sfx/Battle/Vesna/SFX_Magic_Healing_04_fast.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Magic_Healing_04_fast.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://b1fomas0oqjpt"
+uid="uid://mwaashmdqa3i"
path="res://.godot/imported/SFX_Magic_Healing_04_fast.wav-fc1ef7baa2b3ed148282efc274c44e52.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Root_Attack_Vesna.wav.import b/audio/sfx/Battle/Vesna/SFX_Root_Attack_Vesna.wav.import
index 0b8e370..d497ac8 100644
--- a/audio/sfx/Battle/Vesna/SFX_Root_Attack_Vesna.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Root_Attack_Vesna.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://c3am302vufkro"
+uid="uid://c2pgljd754vs7"
path="res://.godot/imported/SFX_Root_Attack_Vesna.wav-804e98f63e7d69ed37f9c4fa308bc500.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_01.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_01.wav.import
index 47294b0..249f683 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_01.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dlsx01k6f6pmm"
+uid="uid://5ievu3sfwucp"
path="res://.godot/imported/SFX_Schlappentornado_01.wav-c582e8dcd01397aaf17e71f637bc4d7b.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_02.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_02.wav.import
index 4910c0b..8fdaa40 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_02.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://1xaqpvcln3y8"
+uid="uid://bwjtrxttotj2j"
path="res://.godot/imported/SFX_Schlappentornado_02.wav-4364336f8b6042f712341c8bceaa6f69.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_03.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_03.wav.import
index b997990..c41018d 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_03.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://fd6um7q650nk"
+uid="uid://bo5jti7x7034h"
path="res://.godot/imported/SFX_Schlappentornado_03.wav-417d5b4aa9d30bd083afe643bab84667.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_04.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_04.wav.import
index cbb0a1e..0eb5407 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_04.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://dhcwaj5n255p1"
+uid="uid://dphaow5cq3g6c"
path="res://.godot/imported/SFX_Schlappentornado_04.wav-a453a392d103b7d15680ea42e8126d83.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_05.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_05.wav.import
index b76948f..2c7038a 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_05.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://cbri70r1xum2s"
+uid="uid://b6vpetyvaqcq0"
path="res://.godot/imported/SFX_Schlappentornado_05.wav-cc1d4dc8d3c47f24c37b6418f32f6c73.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_06.wav.import b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_06.wav.import
index b15cd5a..235bb5a 100644
--- a/audio/sfx/Battle/Vesna/SFX_Schlappentornado_06.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Schlappentornado_06.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://w7rq0q6v06h5"
+uid="uid://dl3qxvnvykyf6"
path="res://.godot/imported/SFX_Schlappentornado_06.wav-8c1c4b87fea0f92f0cfbcb76bf6c4323.sample"
[deps]
diff --git a/audio/sfx/Battle/Vesna/SFX_Water_Attack_Vesna.wav.import b/audio/sfx/Battle/Vesna/SFX_Water_Attack_Vesna.wav.import
index 8d9fd22..13b1460 100644
--- a/audio/sfx/Battle/Vesna/SFX_Water_Attack_Vesna.wav.import
+++ b/audio/sfx/Battle/Vesna/SFX_Water_Attack_Vesna.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://co03cby0vaawx"
+uid="uid://c7251wvgy4h2w"
path="res://.godot/imported/SFX_Water_Attack_Vesna.wav-80df249212db78948de9713a24159785.sample"
[deps]
diff --git a/audio/sfx/UI/Dialog/SFX_Dialog_01.wav.import b/audio/sfx/UI/Dialog/SFX_Dialog_01.wav.import
index fc737ba..d214353 100644
--- a/audio/sfx/UI/Dialog/SFX_Dialog_01.wav.import
+++ b/audio/sfx/UI/Dialog/SFX_Dialog_01.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://by7s7embn7g7d"
+uid="uid://bsovtqwwqxqc0"
path="res://.godot/imported/SFX_Dialog_01.wav-293aaa14ecb10661657b58a09a6323e9.sample"
[deps]
diff --git a/audio/sfx/UI/Dialog/SFX_Dialog_02.wav.import b/audio/sfx/UI/Dialog/SFX_Dialog_02.wav.import
index be292b1..ba56667 100644
--- a/audio/sfx/UI/Dialog/SFX_Dialog_02.wav.import
+++ b/audio/sfx/UI/Dialog/SFX_Dialog_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://xk6440widj7d"
+uid="uid://blvs5qmksdvxy"
path="res://.godot/imported/SFX_Dialog_02.wav-85c959e07735a986a77da2c269bc1f9d.sample"
[deps]
diff --git a/audio/sfx/UI/Dialog/SFX_Dialog_03.wav.import b/audio/sfx/UI/Dialog/SFX_Dialog_03.wav.import
index 69b1b8a..fae7461 100644
--- a/audio/sfx/UI/Dialog/SFX_Dialog_03.wav.import
+++ b/audio/sfx/UI/Dialog/SFX_Dialog_03.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://lrki5i2gfj1h"
+uid="uid://b7xai1u4pmulg"
path="res://.godot/imported/SFX_Dialog_03.wav-1bbb5a21a8e54b161eea70a14f9c94bb.sample"
[deps]
diff --git a/audio/sfx/UI/Dialog/SFX_Dialog_04.wav.import b/audio/sfx/UI/Dialog/SFX_Dialog_04.wav.import
index bcbd1a7..d500515 100644
--- a/audio/sfx/UI/Dialog/SFX_Dialog_04.wav.import
+++ b/audio/sfx/UI/Dialog/SFX_Dialog_04.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://d20ffwcmjxa84"
+uid="uid://1itiu3ktu2po"
path="res://.godot/imported/SFX_Dialog_04.wav-1101484de9b4eebba18c5a47de942e72.sample"
[deps]
diff --git a/audio/sfx/UI/Dialog/SFX_Dialog_05.wav.import b/audio/sfx/UI/Dialog/SFX_Dialog_05.wav.import
index 98a9f84..b6367b2 100644
--- a/audio/sfx/UI/Dialog/SFX_Dialog_05.wav.import
+++ b/audio/sfx/UI/Dialog/SFX_Dialog_05.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://bedq84a8nojhc"
+uid="uid://cvr2el0epo31a"
path="res://.godot/imported/SFX_Dialog_05.wav-455094e2d85516139721dac6477eebc7.sample"
[deps]
diff --git a/audio/sfx/UI/SFX_Confirmation_02.wav.import b/audio/sfx/UI/SFX_Confirmation_02.wav.import
index a4196d9..ecf4faa 100644
--- a/audio/sfx/UI/SFX_Confirmation_02.wav.import
+++ b/audio/sfx/UI/SFX_Confirmation_02.wav.import
@@ -2,7 +2,7 @@
importer="wav"
type="AudioStreamWAV"
-uid="uid://11hhiofyqot4"
+uid="uid://dc66xsv82u2cq"
path="res://.godot/imported/SFX_Confirmation_02.wav-65b16244ef4e3c83a971cd2e3521f195.sample"
[deps]
diff --git a/dialog/Chuga.dch b/dialog/Chuga.dch
new file mode 100644
index 0000000..732ef41
--- /dev/null
+++ b/dialog/Chuga.dch
@@ -0,0 +1,19 @@
+{
+"@path": "res://addons/dialogic/Resources/character.gd",
+"@subpath": NodePath(""),
+&"_translation_id": "",
+&"color": Color(1, 1, 1, 1),
+&"custom_info": {
+"sound_mood_default": "",
+"sound_moods": {},
+"style": ""
+},
+&"default_portrait": "",
+&"description": "helpful spirit forest",
+&"display_name": "Chuga",
+&"mirror": false,
+&"nicknames": [""],
+&"offset": Vector2(0, 0),
+&"portraits": {},
+&"scale": 1.0
+}
\ No newline at end of file
diff --git a/dialog/Chuga.dch.uid b/dialog/Chuga.dch.uid
new file mode 100644
index 0000000..a620cca
--- /dev/null
+++ b/dialog/Chuga.dch.uid
@@ -0,0 +1 @@
+uid://dkbi4kpwu5o07
diff --git a/dialog/Domovoi.dch b/dialog/Domovoi.dch
new file mode 100644
index 0000000..806636a
--- /dev/null
+++ b/dialog/Domovoi.dch
@@ -0,0 +1,19 @@
+{
+"@path": "res://addons/dialogic/Resources/character.gd",
+"@subpath": NodePath(""),
+&"_translation_id": "",
+&"color": Color(1, 1, 1, 1),
+&"custom_info": {
+"sound_mood_default": "",
+"sound_moods": {},
+"style": ""
+},
+&"default_portrait": "",
+&"description": "Yeli's Domovoi",
+&"display_name": "Domovoi",
+&"mirror": false,
+&"nicknames": [""],
+&"offset": Vector2(0, 0),
+&"portraits": {},
+&"scale": 1.0
+}
\ No newline at end of file
diff --git a/dialog/Domovoi.dch.uid b/dialog/Domovoi.dch.uid
new file mode 100644
index 0000000..b2b4d7e
--- /dev/null
+++ b/dialog/Domovoi.dch.uid
@@ -0,0 +1 @@
+uid://75u6ft7n7w0l
diff --git a/dialog/Everyone.dch b/dialog/Everyone.dch
new file mode 100644
index 0000000..e0a035c
--- /dev/null
+++ b/dialog/Everyone.dch
@@ -0,0 +1,19 @@
+{
+"@path": "res://addons/dialogic/Resources/character.gd",
+"@subpath": NodePath(""),
+&"_translation_id": "",
+&"color": Color(1, 1, 1, 1),
+&"custom_info": {
+"sound_mood_default": "",
+"sound_moods": {},
+"style": ""
+},
+&"default_portrait": "",
+&"description": "",
+&"display_name": "Everyone",
+&"mirror": false,
+&"nicknames": [""],
+&"offset": Vector2(0, 0),
+&"portraits": {},
+&"scale": 1.0
+}
\ No newline at end of file
diff --git a/dialog/Everyone.dch.uid b/dialog/Everyone.dch.uid
new file mode 100644
index 0000000..63f6c9e
--- /dev/null
+++ b/dialog/Everyone.dch.uid
@@ -0,0 +1 @@
+uid://6o18wptg611k
diff --git a/dialog/Vesna2.dch b/dialog/Vesna2.dch
new file mode 100644
index 0000000..090ef1e
--- /dev/null
+++ b/dialog/Vesna2.dch
@@ -0,0 +1,19 @@
+{
+"@path": "res://addons/dialogic/Resources/character.gd",
+"@subpath": NodePath(""),
+&"_translation_id": "",
+&"color": Color(1, 1, 1, 1),
+&"custom_info": {
+"sound_mood_default": "",
+"sound_moods": {},
+"style": "NPC_narrative"
+},
+&"default_portrait": "",
+&"description": "Main character",
+&"display_name": "Vesna2",
+&"mirror": false,
+&"nicknames": [""],
+&"offset": Vector2(0, 0),
+&"portraits": {},
+&"scale": 1.0
+}
\ No newline at end of file
diff --git a/dialog/Vesna2.dch.uid b/dialog/Vesna2.dch.uid
new file mode 100644
index 0000000..435f2ed
--- /dev/null
+++ b/dialog/Vesna2.dch.uid
@@ -0,0 +1 @@
+uid://c0vfdx7xal0py
diff --git a/dialog/Yeli.dch b/dialog/Yeli.dch
index ac1d001..4703cab 100644
--- a/dialog/Yeli.dch
+++ b/dialog/Yeli.dch
@@ -5,7 +5,18 @@
&"color": Color(1, 1, 1, 1),
&"custom_info": {
"sound_mood_default": "",
-"sound_moods": {},
+"sound_moods": {
+"Mood 1": {
+"mode": 0,
+"name": "Mood 1",
+"pitch_base": 1.0,
+"pitch_variance": 0.0,
+"skip_characters": 0.0,
+"sound_path": "",
+"volume_base": 0.0,
+"volume_variance": 0.0
+}
+},
"style": "NPC_narrative"
},
&"default_portrait": "_part_side",
@@ -46,7 +57,7 @@
"export_overrides": {
"image": "\"res://art/characters/yeli animierbar/yeli_side.png\""
},
-"mirror": false,
+"mirror": true,
"offset": Vector2(0, 0),
"scale": 1,
"scene": ""
diff --git a/dialog/disclaimer.dtl b/dialog/disclaimer.dtl
new file mode 100644
index 0000000..5969dcd
--- /dev/null
+++ b/dialog/disclaimer.dtl
@@ -0,0 +1,12 @@
+join vesna left
+vesna: Hello!
+join Yeli (_side) right
+Yeli (_frontal): Welcome to Babushka!
+vesna (half side): We are Cozy Raven. This is our first showcase.
+Yeli (_part_side): Many of the lofty, idealist, dreamy things that we wanted to implement are still in the backlog, waiting for their turn.
+vesna (front): But alas! The deadlines loomed, the bugs were strong with this one, and our days only have 24 hours.
+Yeli (_frontal): So please be kind when you test this demo. We poured our hearts and our love for the slavic folklore into this one and will continue to do so.
+vesna (half side): Have fun and tell us what you think! Thank you!
+leave vesna
+leave Yeli
+[end_timeline]
diff --git a/dialog/disclaimer.dtl.uid b/dialog/disclaimer.dtl.uid
new file mode 100644
index 0000000..1890bc2
--- /dev/null
+++ b/dialog/disclaimer.dtl.uid
@@ -0,0 +1 @@
+uid://d1s4fpcb55rqb
diff --git a/dialog/quest1_ducks_end.dtl b/dialog/quest1_ducks_end.dtl
new file mode 100644
index 0000000..7a0ae37
--- /dev/null
+++ b/dialog/quest1_ducks_end.dtl
@@ -0,0 +1,3 @@
+join vesna left
+That’s the last one. I should get back to Yeli.
+[end_timeline]
diff --git a/dialog/quest1_ducks_end.dtl.uid b/dialog/quest1_ducks_end.dtl.uid
new file mode 100644
index 0000000..5886379
--- /dev/null
+++ b/dialog/quest1_ducks_end.dtl.uid
@@ -0,0 +1 @@
+uid://m4koh11hl7dr
diff --git a/dialog/quest1_ducks_start.dtl b/dialog/quest1_ducks_start.dtl
new file mode 100644
index 0000000..4076e9e
--- /dev/null
+++ b/dialog/quest1_ducks_start.dtl
@@ -0,0 +1,8 @@
+join Yeli center
+join vesna left
+Yeli (_part_side): Come here, you little quacking beast!
+- What a mess!
+- You haven’t called me that way yet.
+Yeli (_part_side): Vesna, oh, thank goodness!
+Yeli (_part_side): Please could you get the runner ducks back into their coop?
+[end_timeline]
diff --git a/dialog/quest1_ducks_start.dtl.uid b/dialog/quest1_ducks_start.dtl.uid
new file mode 100644
index 0000000..76a490a
--- /dev/null
+++ b/dialog/quest1_ducks_start.dtl.uid
@@ -0,0 +1 @@
+uid://8hbdcasjfqe2
diff --git a/dialog/quest2_tomatoes_end.dtl b/dialog/quest2_tomatoes_end.dtl
new file mode 100644
index 0000000..3989def
--- /dev/null
+++ b/dialog/quest2_tomatoes_end.dtl
@@ -0,0 +1,4 @@
+join Vesna2 center
+Vesna2: I just wish I liked tomatoes more.
+Vesna2: Well…Yeli probably started with the cooking. I should go inside.
+[end_timeline]
diff --git a/dialog/quest2_tomatoes_end.dtl.uid b/dialog/quest2_tomatoes_end.dtl.uid
new file mode 100644
index 0000000..1e0aebb
--- /dev/null
+++ b/dialog/quest2_tomatoes_end.dtl.uid
@@ -0,0 +1 @@
+uid://caar10vf25avk
diff --git a/dialog/quest2_tomatoes_interim.dtl b/dialog/quest2_tomatoes_interim.dtl
new file mode 100644
index 0000000..d99badc
--- /dev/null
+++ b/dialog/quest2_tomatoes_interim.dtl
@@ -0,0 +1,10 @@
+join Yeli center
+join Vesna2 center
+Yeli (_part_side): Great! Now I need you to plant some tomatoes!
+label plant tomatoes
+Yeli (_part_side): Use the hoe to break up the soil. Then plant the seeds and water the fields.
+Yeli (_part_side): Got it?
+- Of course!
+- Wait … How do I plant the tomatoes again?
+ jump plant tomatoes
+[end_timeline]
diff --git a/dialog/quest2_tomatoes_interim.dtl.uid b/dialog/quest2_tomatoes_interim.dtl.uid
new file mode 100644
index 0000000..01bd9d7
--- /dev/null
+++ b/dialog/quest2_tomatoes_interim.dtl.uid
@@ -0,0 +1 @@
+uid://hiddni4o2feu
diff --git a/dialog/quest2_tomatoes_start.dtl b/dialog/quest2_tomatoes_start.dtl
new file mode 100644
index 0000000..6e21977
--- /dev/null
+++ b/dialog/quest2_tomatoes_start.dtl
@@ -0,0 +1,10 @@
+join Yeli center
+join Vesna2 center
+Yeli (_part_side): Thank you, my child! Your Yeli is not so agile anymore.
+Vesna2: But you’re diligent! You’ve started with the preparation for dinner.
+Yeli (_part_side): Indeed, I have.
+Yeli (_part_side): But, oh my, those ducks messed up the tomatos.
+Yeli (_part_side): Oh, would you like to assist me?
+Vesna2: What do I have to do?
+Yeli (_part_side): First, take the hoe and watering can over there! Then come back to me!
+[end_timeline]
diff --git a/dialog/quest2_tomatoes_start.dtl.uid b/dialog/quest2_tomatoes_start.dtl.uid
new file mode 100644
index 0000000..b4fecd1
--- /dev/null
+++ b/dialog/quest2_tomatoes_start.dtl.uid
@@ -0,0 +1 @@
+uid://jiu6pdap5wuj
diff --git a/dialog/quest3_beets_end.dtl b/dialog/quest3_beets_end.dtl
new file mode 100644
index 0000000..2fdf181
--- /dev/null
+++ b/dialog/quest3_beets_end.dtl
@@ -0,0 +1,9 @@
+join Yeli center
+join Vesna2 center
+Yeli (_part_side): Wow! So many?
+Yeli (_part_side): Good job! Put it in the kettle!
+[wait_input]
+Yeli (_part_side): Mmmh! This will be something.
+Yeli (_part_side): Thank you! I can take everything else from here.
+Yeli (_part_side): See you for dinner!
+[end_timeline]
diff --git a/dialog/quest3_beets_end.dtl.uid b/dialog/quest3_beets_end.dtl.uid
new file mode 100644
index 0000000..fa78589
--- /dev/null
+++ b/dialog/quest3_beets_end.dtl.uid
@@ -0,0 +1 @@
+uid://bh4ept5nbdxes
diff --git a/dialog/quest3_beets_interim.dtl b/dialog/quest3_beets_interim.dtl
new file mode 100644
index 0000000..9db53c1
--- /dev/null
+++ b/dialog/quest3_beets_interim.dtl
@@ -0,0 +1,15 @@
+join Vesna2 center
+join Domovoi center
+Vesna2: Oh no, most of the beets aren’t ripe yet.
+Domovoi: Pssss!
+Domovoi: Yeah, you!
+Domovoi: The code word is “Rosty Rosty”
+Vesna2: What?
+Domovoi: Just say it!
+Vesna2: Rosty…rosty?
+# Hier wächst die rote Beete magisch. Mit einem Signal/Ereignis?
+[signal]
+Vesna2: It worked! How did it work?
+Vesna2: Thank y…and he’s gone.
+What a truly quirky individual.
+[end_timeline]
diff --git a/dialog/quest3_beets_interim.dtl.uid b/dialog/quest3_beets_interim.dtl.uid
new file mode 100644
index 0000000..5b10fec
--- /dev/null
+++ b/dialog/quest3_beets_interim.dtl.uid
@@ -0,0 +1 @@
+uid://hlvjcir0ined
diff --git a/dialog/quest3_beets_start.dtl b/dialog/quest3_beets_start.dtl
new file mode 100644
index 0000000..06ee7c2
--- /dev/null
+++ b/dialog/quest3_beets_start.dtl
@@ -0,0 +1,21 @@
+join Yeli right
+join vesna left
+Yeli (_part_side): You see, you don’t need a man to keep your garden in shape.
+- Just a little help from Vesna.
+- Frankly, I kept Vasily away from our garden after he destroyed our sunflowers.
+Yeli (_part_side): Haha! True words.
+Yeli (_part_side): It’s your very first time in this house in a long time, isn’t it?
+vesna: Yes. And you have two cats now?
+Yeli (_part_side): No, no, the second bowl is for the Domovoi, as a gift.
+Yeli (_part_side): Your Yeli still practices the old traditions.
+vesna: And have you spotted any Domovois since?
+Yeli (_part_side): No, but would you believe it, the cat grew double the size. Haha!
+vesna: Your cat really gets the best of the best. Your soup already smells great!
+Yeli (_part_side): But it’s missing…something.
+Yeli (_part_side): Ah!
+label bring_beets
+Yeli (_part_side): Would you bring me some beets from the garden while I take care of the soup? Here’s the key!
+- Sure!
+- What do you need again?
+ jump bring_beets
+[end_timeline]
diff --git a/dialog/quest3_beets_start.dtl.uid b/dialog/quest3_beets_start.dtl.uid
new file mode 100644
index 0000000..10f0c19
--- /dev/null
+++ b/dialog/quest3_beets_start.dtl.uid
@@ -0,0 +1 @@
+uid://dsc2d4fpu8ip2
diff --git a/dialog/quest4_dinner.dtl b/dialog/quest4_dinner.dtl
new file mode 100644
index 0000000..05b1406
--- /dev/null
+++ b/dialog/quest4_dinner.dtl
@@ -0,0 +1,18 @@
+join Yeli center
+join Vesna2 center
+Everyone: Smachnoho!
+Vesna2: Lovely soup, Yeli!
+Yeli (_part_side): God bless you, my child! That’s also thanks to you.
+Vesna2: So, how do you like it in Lasnoye so far?
+- It feels different from when Vasily and I used to live here.
+- It’s just as I remembered it.
+Yeli (_part_side): Indeed, it is.
+Yeli (_part_side): Since the evacuation, Lasnoye and its people had to adapt to…new circumstances.
+Yeli (_part_side): But at its core, it’s still our motherland from back then.
+Vesna2: …And the forest? Has anyone tried to go back and--
+Yeli (_part_side): The forest is strictly off-limits!
+Yeli (_part_side): Dragana forbids it.
+Yeli (_part_side): The grime turned the forest into a dangerous place.
+Yeli (_part_side): But here you’re safe. After all, you can always count on your Yeli!
+Vesna2: In that case, pass me some more soup!
+[end_timeline]
diff --git a/dialog/quest4_dinner.dtl.uid b/dialog/quest4_dinner.dtl.uid
new file mode 100644
index 0000000..8351adc
--- /dev/null
+++ b/dialog/quest4_dinner.dtl.uid
@@ -0,0 +1 @@
+uid://b176n5u7bplyh
diff --git a/dialog/quest5_forest_end.dtl b/dialog/quest5_forest_end.dtl
new file mode 100644
index 0000000..c0dde00
--- /dev/null
+++ b/dialog/quest5_forest_end.dtl
@@ -0,0 +1,5 @@
+join Chuga center
+Chuga: I believe you’ve seen enough for today.
+Chuga: And yes, you too.
+Thank you for playing!
+[end_timeline]
diff --git a/dialog/quest5_forest_end.dtl.uid b/dialog/quest5_forest_end.dtl.uid
new file mode 100644
index 0000000..3ac5620
--- /dev/null
+++ b/dialog/quest5_forest_end.dtl.uid
@@ -0,0 +1 @@
+uid://ck5nt0bykudeb
diff --git a/dialog/quest5_forest_start.dtl b/dialog/quest5_forest_start.dtl
new file mode 100644
index 0000000..ce9dc6f
--- /dev/null
+++ b/dialog/quest5_forest_start.dtl
@@ -0,0 +1,22 @@
+join Vesna2 center
+join Chuga center
+Chuga: Look who it is!
+Vesna2: Your name was Chuga, right? I want to go to the forest!
+Chuga: To the forest? After everything the others told you?
+Vesna2: Will you let me through?
+Chuga: Will I?
+Chuga: Let us have a riddle!
+Chuga: If you answer correctly, I let you through.
+Chuga: If not, I let you through anyway.
+Vesna2: So, what’s the point of answering?
+Chuga: You give me an answer, and I give you something to see in the dark.
+Chuga: Or are you planning to return with bumps and bruises?
+Chuga: So, listen\: “I wear a crown, but I’m no king.” Vesna, what am I?
+- Queen
+ Chuga: What a boring answer.
+- Tree
+ That’s it!
+- Soup
+ Chuga: Hate the player, not the game.
+Chuga: Here you go!
+[end_timeline]
diff --git a/dialog/quest5_forest_start.dtl.uid b/dialog/quest5_forest_start.dtl.uid
new file mode 100644
index 0000000..c97220d
--- /dev/null
+++ b/dialog/quest5_forest_start.dtl.uid
@@ -0,0 +1 @@
+uid://57esymqfp3v3
diff --git a/dialog/vesna.dch b/dialog/vesna.dch
new file mode 100644
index 0000000..e452b0c
--- /dev/null
+++ b/dialog/vesna.dch
@@ -0,0 +1,49 @@
+{
+"@path": "res://addons/dialogic/Resources/character.gd",
+"@subpath": NodePath(""),
+&"_translation_id": "",
+&"color": Color(1, 1, 1, 1),
+&"custom_info": {
+"sound_mood_default": "",
+"sound_moods": {
+"Mood 1": {
+"mode": 0,
+"name": "Mood 1",
+"pitch_base": 1.0,
+"pitch_variance": 0.0,
+"skip_characters": 0.0,
+"sound_path": "",
+"volume_base": 0.0,
+"volume_variance": 0.0
+}
+},
+"style": "NPC_narrative"
+},
+&"default_portrait": "front",
+&"description": "The main character. ",
+&"display_name": "Vesna",
+&"mirror": false,
+&"nicknames": ["vesna"],
+&"offset": Vector2(-300, 0),
+&"portraits": {
+"front": {
+"export_overrides": {
+"image": "\"res://art/animation/Vesna2D/Vesna Anims Sequences/F01-Idle/0001.png\""
+},
+"mirror": false,
+"offset": Vector2(0, 0),
+"scale": 0.6,
+"scene": ""
+},
+"half side": {
+"export_overrides": {
+"image": "\"res://art/animation/Vesna2D/Vesna Anims Sequences/D05-Talk/0001.png\""
+},
+"mirror": false,
+"offset": Vector2(0, 0),
+"scale": 0.6,
+"scene": ""
+}
+},
+&"scale": 1.0
+}
\ No newline at end of file
diff --git a/dialog/vesna.dch.uid b/dialog/vesna.dch.uid
new file mode 100644
index 0000000..e2367dd
--- /dev/null
+++ b/dialog/vesna.dch.uid
@@ -0,0 +1 @@
+uid://cnbmi38eifn5d
diff --git a/prefabs/UI/Inventory/Inventory.tscn b/prefabs/UI/Inventory/Inventory.tscn
index c766c0f..6f30c83 100644
--- a/prefabs/UI/Inventory/Inventory.tscn
+++ b/prefabs/UI/Inventory/Inventory.tscn
@@ -1,6 +1,7 @@
-[gd_scene load_steps=10 format=3 uid="uid://cgjc4wurbgimy"]
+[gd_scene load_steps=11 format=3 uid="uid://cgjc4wurbgimy"]
[ext_resource type="Script" uid="uid://hg7jay2kt441" path="res://scripts/CSharp/Common/Inventory/InventoryUi.cs" id="1_6wusm"]
+[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="1_l3npx"]
[ext_resource type="Texture2D" uid="uid://3ln8aleyxgp1" path="res://art/ui/UI/UI_bag_export_01.png" id="3_vvo7l"]
[ext_resource type="Texture2D" uid="uid://u0dku75l17re" path="res://art/ui/UI/UI_bag_export_highlight_01.png" id="5_df8i8"]
[ext_resource type="PackedScene" uid="uid://c0kmdjeqkqrwv" path="res://prefabs/UI/Inventory/Slot.tscn" id="5_u7kje"]
@@ -13,18 +14,24 @@
[node name="CanvasLayer" type="CanvasLayer"]
layer = 90
-[node name="DialogicToggle" type="Node2D" parent="."]
+[node name="DialogicToggle" type="Node2D" parent="." node_paths=PackedStringArray("itemToToggle")]
scale = Vector2(0.7, 0.7)
+script = ExtResource("1_l3npx")
+itemToToggle = NodePath("../Inventory")
[node name="Inventory" type="Control" parent="." node_paths=PackedStringArray("_slotsParent", "_slotsMover", "_headerSlots", "_slotSelect")]
layout_mode = 3
-anchors_preset = 8
+anchors_preset = 7
anchor_left = 0.5
-anchor_top = 0.5
+anchor_top = 1.0
anchor_right = 0.5
-anchor_bottom = 0.5
+anchor_bottom = 1.0
+offset_left = -116.0
+offset_top = -53.0
+offset_right = 231.82
+offset_bottom = 141.4
grow_horizontal = 2
-grow_vertical = 2
+grow_vertical = 0
size_flags_vertical = 8
script = ExtResource("1_6wusm")
_slotsParent = NodePath("SlotsContainer/SlotsMover/Slots")
diff --git a/prefabs/characters/Yeli.tscn b/prefabs/characters/Yeli.tscn
index 1bb8b72..bae482c 100644
--- a/prefabs/characters/Yeli.tscn
+++ b/prefabs/characters/Yeli.tscn
@@ -183,13 +183,14 @@ animations = [{
}]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_aqu1t"]
-radius = 202.0
-height = 404.0
+radius = 84.0
+height = 168.0
-[node name="Yeli" type="Node2D"]
+[node name="Yeli" type="Node2D" node_paths=PackedStringArray("_sprite")]
z_index = 1
y_sort_enabled = true
-script = ExtResource("1_at1n1")
+script = ExtResource("1_hn8at")
+_sprite = NodePath("TalkingControl/AnimatedSprite")
[node name="InteractionArea" parent="." instance=ExtResource("42_ahrat")]
position = Vector2(0, -450)
@@ -207,10 +208,7 @@ offset_bottom = -142.633
theme_override_font_sizes/font_size = 60
text = "[E] talk"
-[node name="TalkingControl" type="Node2D" parent="." node_paths=PackedStringArray("_sprite")]
-script = ExtResource("1_hn8at")
-_sprite = NodePath("AnimatedSprite")
-_timelinesToPlay = PackedStringArray("yeli_intro_01", "yeli_intro_02", "yeli_intro_03", "yeli_intro_04")
+[node name="TalkingControl" type="Node2D" parent="."]
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="TalkingControl"]
y_sort_enabled = true
@@ -219,17 +217,21 @@ animation = &"idle"
frame_progress = 0.437711
offset = Vector2(0, -450)
-[node name="DialogicToggle" type="Node2D" parent="."]
+[node name="Dialogic starter" type="Node2D" parent="."]
+script = ExtResource("1_at1n1")
+
+[node name="DialogicToggle" type="Node2D" parent="Dialogic starter"]
script = ExtResource("44_aqu1t")
[node name="AnimatableBody2D" type="AnimatableBody2D" parent="."]
position = Vector2(0, -172)
[node name="CollisionShape2D" type="CollisionShape2D" parent="AnimatableBody2D"]
+position = Vector2(0, 94)
shape = SubResource("CapsuleShape2D_aqu1t")
-[connection signal="Interacted" from="InteractionArea" to="TalkingControl" method="ToggleTalking"]
-[connection signal="Talking" from="TalkingControl" to="." method="open"]
-[connection signal="timelineEnded" from="DialogicToggle" to="TalkingControl" method="ToggleTalking"]
+[connection signal="Talking" from="." to="Dialogic starter" method="open"]
+[connection signal="Interacted" from="InteractionArea" to="." method="ToggleTalking"]
+[connection signal="timelineEnded" from="Dialogic starter/DialogicToggle" to="." method="ToggleTalking"]
[editable path="InteractionArea"]
diff --git a/prefabs/farm/base_plant_2d.tscn b/prefabs/farm/base_plant_2d.tscn
index b9cde65..a4026fb 100644
--- a/prefabs/farm/base_plant_2d.tscn
+++ b/prefabs/farm/base_plant_2d.tscn
@@ -26,6 +26,8 @@ resource_local_to_scene = true
radius = 300.0
[node name="BasePlant" type="Node2D" node_paths=PackedStringArray("_seeds", "_smallPlants", "_bigPlants", "_readyPlants", "_harvestablePlant")]
+z_index = 1
+y_sort_enabled = true
script = ExtResource("1_tikj4")
_seeds = [NodePath("Seeds/TomatoSeed"), NodePath("Seeds/TomatoSeed2"), NodePath("Seeds/TomatoSeed3")]
_smallPlants = [NodePath("SmallPlant/01"), NodePath("SmallPlant/02"), NodePath("SmallPlant/03"), NodePath("SmallPlant/04")]
diff --git a/prefabs/farm/duck.tscn b/prefabs/farm/duck.tscn
index 64e1d39..5c37de3 100644
--- a/prefabs/farm/duck.tscn
+++ b/prefabs/farm/duck.tscn
@@ -1,219 +1,343 @@
-[gd_scene load_steps=2 format=3 uid="uid://muuxxgvx33fp"]
+[gd_scene load_steps=23 format=3 uid="uid://muuxxgvx33fp"]
+[ext_resource type="Script" uid="uid://7m1rt7agb6rm" path="res://scripts/CSharp/Common/Temp/MVPDuck.cs" id="1_54k4r"]
[ext_resource type="Texture2D" uid="uid://hvchk6t0xe7j" path="res://art/animals/Ente.png" id="1_cgxhx"]
+[ext_resource type="AudioStream" uid="uid://qv0aubjeyi0u" path="res://audio/sfx/Animals/SFX_Duck_Quack_01.wav" id="3_kjie1"]
+[ext_resource type="Script" uid="uid://cfnrd5k1k0gxw" path="res://scripts/CSharp/Common/AudioPlayer.cs" id="3_rdn2q"]
+[ext_resource type="AudioStream" uid="uid://da84l8e44scwh" path="res://audio/sfx/Animals/SFX_Duck_Quack_02.wav" id="4_54k4r"]
+[ext_resource type="AudioStream" uid="uid://bkx4vyigy0u0e" path="res://audio/sfx/Animals/SFX_Duck_Quack_03.wav" id="5_uo3dh"]
+[ext_resource type="AudioStream" uid="uid://b5o5bu5to04dw" path="res://audio/sfx/Animals/SFX_Duck_Quack_04.wav" id="6_nxoeu"]
+[ext_resource type="AudioStream" uid="uid://dy7y1p1fdl3qi" path="res://audio/sfx/Animals/SFX_Duck_Wings_01.wav" id="8_d4ug3"]
+[ext_resource type="AudioStream" uid="uid://c0pea16pvgyom" path="res://audio/sfx/Animals/SFX_Duck_Wings_02.wav" id="9_4830j"]
+[ext_resource type="AudioStream" uid="uid://bccwhl0pu3b2v" path="res://audio/sfx/Animals/SFX_Duck_Wings_03.wav" id="10_3eek3"]
+[ext_resource type="AudioStream" uid="uid://bixloi5fuoubu" path="res://audio/sfx/Animals/SFX_Duck_Wings_04.wav" id="11_cdkiq"]
+[ext_resource type="AudioStream" uid="uid://g8xhunjfhwde" path="res://audio/sfx/Animals/SFX_Duck_Wings_05.wav" id="12_dx1yn"]
+[ext_resource type="AudioStream" uid="uid://u1ql6s2wep4y" path="res://audio/sfx/Animals/SFX_Duck_Wings_06.wav" id="13_yuxo7"]
+[ext_resource type="Animation" uid="uid://b3dwd88uvfk1k" path="res://art/animals/duck_flapFlap.res" id="14_uo3dh"]
+[ext_resource type="AudioStream" uid="uid://bsr5m8u2sle5k" path="res://audio/sfx/Animals/SFX_Duck_Wings_07.wav" id="14_xhefb"]
+[ext_resource type="PackedScene" uid="uid://cqc72e4hq6bcd" path="res://prefabs/interactions/interaction_area_2d.tscn" id="15_uo3dh"]
+
+[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_sot7i"]
+streams_count = 4
+stream_0/stream = ExtResource("3_kjie1")
+stream_1/stream = ExtResource("4_54k4r")
+stream_2/stream = ExtResource("5_uo3dh")
+stream_3/stream = ExtResource("6_nxoeu")
+
+[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_hyel8"]
+streams_count = 7
+stream_0/stream = ExtResource("8_d4ug3")
+stream_1/stream = ExtResource("9_4830j")
+stream_2/stream = ExtResource("10_3eek3")
+stream_3/stream = ExtResource("11_cdkiq")
+stream_4/stream = ExtResource("12_dx1yn")
+stream_5/stream = ExtResource("13_yuxo7")
+stream_6/stream = ExtResource("14_xhefb")
+
+[sub_resource type="Animation" id="Animation_uo3dh"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("bodyLookingRight/wingR:rotation")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [-0.371117]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("bodyLookingRight/wingL:rotation")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [-0.0925884]
+}
+tracks/2/type = "value"
+tracks/2/imported = false
+tracks/2/enabled = true
+tracks/2/path = NodePath("bodyLookingRight/head:rotation")
+tracks/2/interp = 1
+tracks/2/loop_wrap = true
+tracks/2/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [0.284615]
+}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("bodyLookingRight/head/beak upper:rotation")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [-0.0427724]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("bodyLookingRight/head/beak lower:rotation")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [0.0364142]
+}
+tracks/5/type = "value"
+tracks/5/imported = false
+tracks/5/enabled = true
+tracks/5/path = NodePath("Audio/NakNak:playing")
+tracks/5/interp = 1
+tracks/5/loop_wrap = true
+tracks/5/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [false]
+}
+tracks/6/type = "value"
+tracks/6/imported = false
+tracks/6/enabled = true
+tracks/6/path = NodePath("Audio/WingFlutter:playing")
+tracks/6/interp = 1
+tracks/6/loop_wrap = true
+tracks/6/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [false]
+}
+
+[sub_resource type="Animation" id="Animation_kjie1"]
+resource_name = "new_animation"
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_54k4r"]
+_data = {
+&"RESET": SubResource("Animation_uo3dh"),
+&"flapFlap": ExtResource("14_uo3dh"),
+&"new_animation": SubResource("Animation_kjie1")
+}
+
+[sub_resource type="CircleShape2D" id="CircleShape2D_uo3dh"]
+resource_local_to_scene = true
+radius = 443.041
+
+[node name="Duck" type="Node2D" node_paths=PackedStringArray("_animationPlayer")]
+z_index = 1
+y_sort_enabled = true
+script = ExtResource("1_54k4r")
+_transferDelayMs = 1000
+_animationPlayer = NodePath("AnimationPlayer")
-[node name="Duck" type="Node2D"]
+[node name="Audio" type="Node2D" parent="."]
-[node name="body" type="Node2D" parent="."]
+[node name="NakNak" type="AudioStreamPlayer2D" parent="Audio"]
+stream = SubResource("AudioStreamRandomizer_sot7i")
+script = ExtResource("3_rdn2q")
-[node name="torso" type="Sprite2D" parent="body"]
-position = Vector2(11, 308)
-scale = Vector2(1.07526, 1.01724)
-texture = ExtResource("1_cgxhx")
-offset = Vector2(0, -100)
-region_enabled = true
-region_rect = Rect2(30, 168, 125, 326)
+[node name="WingFlutter" type="AudioStreamPlayer2D" parent="Audio"]
+stream = SubResource("AudioStreamRandomizer_hyel8")
+script = ExtResource("3_rdn2q")
+
+[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
+libraries = {
+&"": SubResource("AnimationLibrary_54k4r")
+}
+
+[node name="bodyLookingRight" type="Node2D" parent="."]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-5, -537)
+rotation = 0.0135349
-[node name="head" type="Sprite2D" parent="body"]
-position = Vector2(39, 56)
-rotation = 0.0272577
-scale = Vector2(1.07521, 1.01729)
-skew = 0.00319612
+[node name="head" type="Sprite2D" parent="bodyLookingRight"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(46.9624, 76.1606)
+rotation = 0.284615
+scale = Vector2(1, 0.997)
+skew = 0.024546
texture = ExtResource("1_cgxhx")
-offset = Vector2(40, -10)
+offset = Vector2(25.2328, -23.0689)
region_enabled = true
region_rect = Rect2(45, 24, 87, 82)
-[node name="wing" type="Sprite2D" parent="body"]
-position = Vector2(-34, 263)
-rotation = -0.384652
-scale = Vector2(0.94817, 1.01462)
-skew = -0.0401236
+[node name="beak upper" type="Sprite2D" parent="bodyLookingRight/head"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(50.669, -7.16257)
+rotation = -0.0427724
+scale = Vector2(0.62715, 0.62715)
texture = ExtResource("1_cgxhx")
-offset = Vector2(-50, 50)
+offset = Vector2(57.1263, -7.47815)
region_enabled = true
-region_rect = Rect2(196, 231, 180, 164)
+region_rect = Rect2(292, 37, 152, 98)
-[node name="underbelly" type="Sprite2D" parent="body"]
-position = Vector2(-11, 340)
-rotation = -2.94251
-scale = Vector2(0.762641, 1.06974)
-skew = 0.0226374
+[node name="beak lower" type="Sprite2D" parent="bodyLookingRight/head"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(47.9076, -15.7341)
+rotation = 0.0364142
+scale = Vector2(0.58615, 0.58615)
texture = ExtResource("1_cgxhx")
+offset = Vector2(60.4601, 37.8134)
region_enabled = true
-region_rect = Rect2(196, 231, 180, 164)
+region_rect = Rect2(295, 170, 145, 39)
-[node name="leg left" type="Sprite2D" parent="body"]
-position = Vector2(45, 323)
-rotation = 2.61158
-scale = Vector2(0.719395, 0.70185)
-skew = -0.0496454
+[node name="torso" type="Sprite2D" parent="bodyLookingRight"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(5.90997, 355.352)
+scale = Vector2(1.07526, 1.01724)
texture = ExtResource("1_cgxhx")
+offset = Vector2(2.87376, -131.092)
region_enabled = true
-region_rect = Rect2(196, 231, 177, 161)
+region_rect = Rect2(30, 168, 125, 326)
-[node name="leg right" type="Sprite2D" parent="body"]
-position = Vector2(-24, 364)
-scale = Vector2(1.07526, 1.01724)
+[node name="wingR" type="Sprite2D" parent="bodyLookingRight"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-28, 262)
+rotation = -0.371117
texture = ExtResource("1_cgxhx")
+offset = Vector2(-50, 50)
region_enabled = true
-region_rect = Rect2(196, 231, 177, 161)
+region_rect = Rect2(196, 231, 180, 164)
-[node name="left thigh" type="Sprite2D" parent="body"]
-position = Vector2(20.6384, 395.665)
-rotation = -3.13988
-scale = Vector2(0.647275, 0.575169)
-skew = 0.000200629
+[node name="wingL" type="Sprite2D" parent="bodyLookingRight"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(47.0695, 245.905)
+rotation = -0.0925884
+skew = -0.0345086
texture = ExtResource("1_cgxhx")
+offset = Vector2(-59.5924, 55.37)
region_enabled = true
-region_rect = Rect2(368, 263, 81, 89)
+region_rect = Rect2(196, 231, 180, 164)
-[node name="beak upper" type="Sprite2D" parent="body"]
+[node name="underbelly" type="Sprite2D" parent="bodyLookingRight"]
z_index = 1
y_sort_enabled = true
-position = Vector2(112.206, 69.1074)
-rotation = 0.0776945
-scale = Vector2(0.628805, 0.508821)
-skew = 0.0090723
+position = Vector2(-11.4038, 439.203)
+rotation = -2.98225
+scale = Vector2(0.672245, 0.955267)
+skew = 0.0185422
texture = ExtResource("1_cgxhx")
-offset = Vector2(50, 0)
+offset = Vector2(26.4135, 70.6083)
region_enabled = true
-region_rect = Rect2(292, 37, 152, 98)
+region_rect = Rect2(196, 231, 180, 164)
-[node name="beak lower" type="Sprite2D" parent="body"]
-y_sort_enabled = true
-position = Vector2(108, 84)
-rotation = 0.118232
-scale = Vector2(0.628514, 0.509083)
-skew = 0.0137196
+[node name="leg left" type="Sprite2D" parent="bodyLookingRight"]
+position = Vector2(36.2887, 300.645)
+rotation = 2.42655
+scale = Vector2(1.05221, 1.04106)
+skew = -0.0544101
texture = ExtResource("1_cgxhx")
-offset = Vector2(50, 0)
region_enabled = true
-region_rect = Rect2(295, 170, 145, 39)
+region_rect = Rect2(196, 231, 177, 161)
-[node name="right thigh" type="Sprite2D" parent="body"]
-position = Vector2(61.9819, 296.858)
-rotation = 1.00015
-scale = Vector2(0.915981, 0.882641)
-skew = 0.0492033
+[node name="left thigh" type="Sprite2D" parent="bodyLookingRight/leg left"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(73.353, -69.771)
+rotation = -2.57238
+scale = Vector2(0.651005, 0.688137)
texture = ExtResource("1_cgxhx")
region_enabled = true
region_rect = Rect2(368, 263, 81, 89)
-[node name="left shin" type="Sprite2D" parent="body"]
-position = Vector2(12, 417)
-rotation = 2.67668
-scale = Vector2(0.695871, 0.569878)
-skew = -0.045905
+[node name="left shin" type="Sprite2D" parent="bodyLookingRight/leg left/left thigh"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-5.71882, 19.9984)
+rotation = 2.69159
+scale = Vector2(0.88169, 0.852516)
+skew = -0.0440769
texture = ExtResource("1_cgxhx")
offset = Vector2(10, -50)
region_enabled = true
region_rect = Rect2(360, 361, 68, 126)
-[node name="right foot" type="Sprite2D" parent="body"]
-position = Vector2(-54, 466)
-rotation = 0.872523
-scale = Vector2(1.04006, 1.0532)
-skew = 0.0540016
+[node name="left foot" type="Sprite2D" parent="bodyLookingRight/leg left/left thigh/left shin"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(15.1289, -77.6075)
+rotation = -2.65268
+scale = Vector2(1.12319, 1.12319)
texture = ExtResource("1_cgxhx")
offset = Vector2(40, 40)
region_enabled = true
region_rect = Rect2(246, 393, 111, 111)
-[node name="right shin" type="Sprite2D" parent="body"]
+[node name="right leg" type="Sprite2D" parent="bodyLookingRight"]
+z_index = 1
+y_sort_enabled = true
position = Vector2(-24, 364)
-scale = Vector2(1.07526, 1.01724)
+rotation = -0.463741
+scale = Vector2(1.07492, 1.01762)
texture = ExtResource("1_cgxhx")
region_enabled = true
+region_rect = Rect2(196, 231, 177, 161)
+
+[node name="right thigh" type="Sprite2D" parent="bodyLookingRight/right leg"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-29.7603, 44.2374)
+rotation = 0.249342
+scale = Vector2(0.625107, 0.655894)
+skew = 0.02161
+texture = ExtResource("1_cgxhx")
+region_enabled = true
+region_rect = Rect2(368, 263, 81, 89)
+
+[node name="right shin" type="Sprite2D" parent="bodyLookingRight/right leg/right thigh"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-2.78734, 11.5692)
+rotation = 0.0689206
+scale = Vector2(1.12016, 1.07128)
+skew = -0.0877244
+texture = ExtResource("1_cgxhx")
+offset = Vector2(-14.163, 37.0936)
+region_enabled = true
region_rect = Rect2(360, 361, 68, 126)
-[node name="left foot" type="Sprite2D" parent="body"]
-position = Vector2(32, 466)
-rotation = 0.0756956
-scale = Vector2(0.703793, 0.562891)
-skew = 0.00884056
+[node name="right foot" type="Sprite2D" parent="bodyLookingRight/right leg/right thigh/right shin"]
+z_index = 1
+y_sort_enabled = true
+position = Vector2(-20.0986, 67.7507)
+rotation = 0.14855
+scale = Vector2(1.212, 1.212)
texture = ExtResource("1_cgxhx")
offset = Vector2(40, 40)
region_enabled = true
region_rect = Rect2(246, 393, 111, 111)
-[node name="bones" type="Node2D" parent="."]
-position = Vector2(76.3651, 53.1382)
-scale = Vector2(1.07526, 1.01724)
+[node name="InteractionArea" parent="." instance=ExtResource("15_uo3dh")]
+position = Vector2(-3, -274)
+
+[node name="CollisionShape3D" parent="InteractionArea/Area2D" index="0"]
+shape = SubResource("CircleShape2D_uo3dh")
+
+[node name="Label" parent="InteractionArea" index="1"]
+modulate = Color(0, 0, 0, 1)
+z_index = 1
+y_sort_enabled = true
+
+[connection signal="Interacted" from="InteractionArea" to="." method="TransferToTargetAfterDelay"]
+[connection signal="Interacted" from="InteractionArea" to="Audio/NakNak" method="PlayOneShot"]
-[node name="Skeleton2D" type="Skeleton2D" parent="bones"]
-
-[node name="hip" type="Bone2D" parent="bones/Skeleton2D"]
-position = Vector2(-71.9501, 273.153)
-rest = Transform2D(1, 0, 0, 1, -71.9501, 273.153)
-
-[node name="LegR" type="Bone2D" parent="bones/Skeleton2D/hip"]
-position = Vector2(-21.3902, 32.4407)
-rest = Transform2D(1, 0, 0, 1, -21.3902, 32.4407)
-
-[node name="ShinR" type="Bone2D" parent="bones/Skeleton2D/hip/LegR"]
-position = Vector2(-33.4803, 51.1187)
-rest = Transform2D(1, 0, 0, 1, -33.4803, 51.1187)
-
-[node name="FootR" type="Bone2D" parent="bones/Skeleton2D/hip/LegR/ShinR"]
-position = Vector2(5.58005, 49.1526)
-rotation = 0.899694
-rest = Transform2D(1.96831, 2.30362, -2.30362, 1.96831, 5.58005, 49.1526)
-
-[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR/ShinR/FootR"]
-remote_path = NodePath("../../../../../../../body/right foot")
-
-[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR/ShinR"]
-position = Vector2(33.4803, -51.1187)
-remote_path = NodePath("../../../../../../body/right shin")
-
-[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR"]
-remote_path = NodePath("../../../../../body/leg right")
-
-[node name="LegL" type="Bone2D" parent="bones/Skeleton2D/hip"]
-position = Vector2(34.4103, 14.7458)
-rotation = -1.17489
-scale = Vector2(1, 1)
-rest = Transform2D(0.385641, -0.922649, 0.922649, 0.385641, 34.4103, 14.7458)
-
-[node name="ShinR" type="Bone2D" parent="bones/Skeleton2D/hip/LegL"]
-position = Vector2(-71.1914, 5.56455)
-rest = Transform2D(1, 0, 0, 1, -71.1914, 5.56455)
-
-[node name="FootR" type="Bone2D" parent="bones/Skeleton2D/hip/LegL/ShinR"]
-position = Vector2(-36.1531, 28.2146)
-rotation = 0.126687
-scale = Vector2(3.03, 3.03)
-rest = Transform2D(3.00572, 0.382835, -0.382835, 3.00572, -36.1531, 28.2146)
-
-[node name="WingR" type="Bone2D" parent="bones/Skeleton2D/hip"]
-position = Vector2(-25.1102, -67.8306)
-rotation = 1.93641
-scale = Vector2(8.485, 8.485)
-rest = Transform2D(-3.03359, 7.92417, -7.92417, -3.03359, -25.1102, -67.8306)
-
-[node name="WingL" type="Bone2D" parent="bones/Skeleton2D/hip"]
-position = Vector2(51.1504, -71.7628)
-rotation = 0.172541
-scale = Vector2(8.485, 8.485)
-rest = Transform2D(8.35901, 1.45676, -1.45676, 8.35901, 51.1504, -71.7628)
-
-[node name="Neck" type="Bone2D" parent="bones/Skeleton2D/hip"]
-position = Vector2(29.7603, -88.4747)
-rest = Transform2D(1, 0, 0, 1, 29.7603, -88.4747)
-
-[node name="Head" type="Bone2D" parent="bones/Skeleton2D/hip/Neck"]
-position = Vector2(18.6001, -166.136)
-rest = Transform2D(1, 0, 0, 1, 18.6001, -166.136)
-
-[node name="BeakUpper" type="Bone2D" parent="bones/Skeleton2D/hip/Neck/Head"]
-position = Vector2(49.2904, -6.88138)
-rotation = 0.445425
-scale = Vector2(3.39, 3.39)
-rest = Transform2D(3.05923, 1.46055, -1.46055, 3.05923, 49.2904, -6.88138)
-
-[node name="BeakLower" type="Bone2D" parent="bones/Skeleton2D/hip/Neck/Head"]
-position = Vector2(45.5704, 16.7119)
-rotation = 0.170714
-scale = Vector2(3.085, 3.085)
-rest = Transform2D(3.04016, 0.5241, -0.5241, 3.04016, 45.5704, 16.7119)
+[editable path="InteractionArea"]
diff --git a/project.godot b/project.godot
index 615be9c..194b08b 100644
--- a/project.godot
+++ b/project.godot
@@ -24,6 +24,7 @@ buses/default_bus_layout="uid://b6dwkmkyb0axk"
[autoload]
+SceneTransition="*res://scenes/SceneTransition.tscn"
Dialogic="*res://addons/dialogic/Core/DialogicGameHandler.gd"
InventoryManager="*res://scripts/CSharp/Common/Inventory/InventoryManager.cs"
QuestManager="*res://scripts/CSharp/Common/Quest/QuestManager.cs"
@@ -33,11 +34,28 @@ Signal_Debugger="*res://addons/SignalVisualizer/Debugger/SignalDebugger.gd"
[dialogic]
directories/dch_directory={
+"Chuga": "res://dialog/Chuga.dch",
+"Domovoi": "res://dialog/Domovoi.dch",
+"Everyone": "res://dialog/Everyone.dch",
+"Vesna2": "res://dialog/Vesna2.dch",
"Yeli": "res://dialog/Yeli.dch",
"defaulty_the_default_character": "res://dialog/defaulty_the_default_character.dch",
-"semi_cat": "res://dialog/semi_cat.dch"
+"semi_cat": "res://dialog/semi_cat.dch",
+"vesna": "res://dialog/vesna.dch"
}
directories/dtl_directory={
+"disclaimer": "res://dialog/disclaimer.dtl",
+"quest1_ducks_end": "res://dialog/quest1_ducks_end.dtl",
+"quest1_ducks_start": "res://dialog/quest1_ducks_start.dtl",
+"quest2_tomatoes_end": "res://dialog/quest2_tomatoes_end.dtl",
+"quest2_tomatoes_interim": "res://dialog/quest2_tomatoes_interim.dtl",
+"quest2_tomatoes_start": "res://dialog/quest2_tomatoes_start.dtl",
+"quest3_beets_end": "res://dialog/quest3_beets_end.dtl",
+"quest3_beets_interim": "res://dialog/quest3_beets_interim.dtl",
+"quest3_beets_start": "res://dialog/quest3_beets_start.dtl",
+"quest4_dinner": "res://dialog/quest4_dinner.dtl",
+"quest5_forest_end": "res://dialog/quest5_forest_end.dtl",
+"quest5_forest_start": "res://dialog/quest5_forest_start.dtl",
"semi_cat": "res://dialog/semi_cat.dtl",
"test_time_line": "res://dialog/test_time_line.dtl",
"yeli_intro_01": "res://dialog/yeli_intro_01.dtl",
diff --git a/resources/quests/beetRoot.tres b/resources/quests/beetRoot.tres
new file mode 100644
index 0000000..8c68fbe
--- /dev/null
+++ b/resources/quests/beetRoot.tres
@@ -0,0 +1,10 @@
+[gd_resource type="Resource" script_class="QuestResource" load_steps=2 format=3 uid="uid://cbpurnewhyefa"]
+
+[ext_resource type="Script" uid="uid://vji5lp4qc8pp" path="res://scripts/CSharp/Common/Quest/QuestResource.cs" id="1_na477"]
+
+[resource]
+script = ExtResource("1_na477")
+id = "beetRoot"
+title = "Get Beetroot!"
+description = "Yeli needs some beetroot for her soup. She mentioned that there was another vegetable garden. You can access it through one of the fence gates."
+metadata/_custom_type_script = "uid://vji5lp4qc8pp"
diff --git a/scenes/Babushka_scene_bootstrap.tscn b/scenes/Babushka_scene_bootstrap.tscn
index 252f873..e50ff18 100644
--- a/scenes/Babushka_scene_bootstrap.tscn
+++ b/scenes/Babushka_scene_bootstrap.tscn
@@ -4,7 +4,7 @@
[node name="BabushkaSceneBootstrap" type="Node2D"]
-[node name="BabushkaSceneStartMenu" parent="." node_paths=PackedStringArray("_sceneInstanceParent") instance=ExtResource("1_15ton")]
-_sceneInstanceParent = NodePath("../SceneParent")
+[node name="BabushkaSceneStartMenu" parent="." instance=ExtResource("1_15ton")]
+_sceneNamesToLoad = PackedStringArray("res://scenes/Babushka_scene_disclaimer.tscn")
[node name="SceneParent" type="Node" parent="."]
diff --git a/scenes/Babushka_scene_disclaimer.tscn b/scenes/Babushka_scene_disclaimer.tscn
new file mode 100644
index 0000000..c050fcd
--- /dev/null
+++ b/scenes/Babushka_scene_disclaimer.tscn
@@ -0,0 +1,39 @@
+[gd_scene load_steps=6 format=3 uid="uid://c02s0c64tm2v"]
+
+[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_5otdq"]
+[ext_resource type="Texture2D" uid="uid://cou4iy8dhqmsf" path="res://art/indoor/indoor outdoor/muster/TEPPICH FLORAL.png" id="3_8y0cv"]
+[ext_resource type="Script" uid="uid://d2486x6upmwqq" path="res://scripts/GdScript/dialogic_starter.gd" id="4_qjf71"]
+[ext_resource type="Script" uid="uid://dnipeibppjirs" path="res://scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs" id="5_ihldk"]
+[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="6_8y0cv"]
+
+[node name="BabushkaSceneDisclaimer" type="Node2D"]
+script = ExtResource("1_5otdq")
+_sceneNamesToLoad = PackedStringArray("res://scenes/Babushka_scene_farm_outside_2d.tscn")
+
+[node name="CanvasLayer" type="CanvasLayer" parent="."]
+
+[node name="TextureRect" type="TextureRect" parent="CanvasLayer"]
+modulate = Color(0.726816, 0.6051, 0.491763, 1)
+anchors_preset = 13
+anchor_left = 0.5
+anchor_right = 0.5
+anchor_bottom = 1.0
+offset_left = -1486.9
+offset_right = 1486.9
+grow_horizontal = 2
+grow_vertical = 2
+texture = ExtResource("3_8y0cv")
+expand_mode = 3
+
+[node name="dialogic" type="Node2D" parent="."]
+script = ExtResource("4_qjf71")
+
+[node name="Dialogue" type="Node2D" parent="dialogic"]
+script = ExtResource("5_ihldk")
+_timelinesToPlay = PackedStringArray("disclaimer")
+
+[node name="toggle" type="Node2D" parent="dialogic"]
+script = ExtResource("6_8y0cv")
+
+[connection signal="Dialogue" from="dialogic/Dialogue" to="dialogic" method="open"]
+[connection signal="timelineEnded" from="dialogic/toggle" to="." method="LoadScene"]
diff --git a/scenes/Babushka_scene_farm_outside_2d.tscn b/scenes/Babushka_scene_farm_outside_2d.tscn
index 216d241..1f5aa61 100644
--- a/scenes/Babushka_scene_farm_outside_2d.tscn
+++ b/scenes/Babushka_scene_farm_outside_2d.tscn
@@ -1,8 +1,7 @@
-[gd_scene load_steps=96 format=3 uid="uid://gigb28qk8t12"]
+[gd_scene load_steps=98 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"]
-[ext_resource type="PackedScene" uid="uid://bm21nqepnwaik" path="res://scenes/Babushka_scene_indoor_common_room.tscn" id="2_taxvr"]
[ext_resource type="Script" uid="uid://bqomwxclsbhd3" path="res://scripts/CSharp/Common/Camera/CameraController.cs" id="3_p4qqi"]
[ext_resource type="Texture2D" uid="uid://be1nofeo7an0" path="res://art/mockups/Kenney_Backgrounds/PNG/cloud2.png" id="3_r34wi"]
[ext_resource type="Texture2D" uid="uid://o6vnf7n7qp8o" path="res://art/mockups/Kenney_Backgrounds/PNG/cloud6.png" id="4_xh22q"]
@@ -46,7 +45,6 @@
[ext_resource type="Texture2D" uid="uid://bq2wojyy4ptva" path="res://art/nature/baum märz 2025/sonnenblume7.png" id="38_2rjny"]
[ext_resource type="AudioStream" uid="uid://fsiypqhql67w" path="res://audio/sfx/Farming/SFX_GettingWater_01.wav" id="39_di1ed"]
[ext_resource type="AudioStream" uid="uid://foyw26hq1qp5" path="res://audio/sfx/Farming/SFX_GettingWater_02.wav" id="40_ceriq"]
-[ext_resource type="Texture2D" uid="uid://hlgoftb0fv34" path="res://art/farm/tilable grounds/böden/brüchiger beton boden.png" id="40_d77e7"]
[ext_resource type="Script" uid="uid://cfnrd5k1k0gxw" path="res://scripts/CSharp/Common/AudioPlayer.cs" id="40_w3jkj"]
[ext_resource type="Texture2D" uid="uid://dgavbfci8x178" path="res://art/nature/grass/grass-1.png" id="41_apj51"]
[ext_resource type="Script" uid="uid://clxb3n668oud3" path="res://scripts/CSharp/Common/Audio/AudioDebugger.cs" id="42_1nkjm"]
@@ -61,6 +59,7 @@
[ext_resource type="Texture2D" uid="uid://d3dwl6ph0pu1d" path="res://art/nature/grass/grass-6.png" id="46_ycj14"]
[ext_resource type="Texture2D" uid="uid://lvhbicmwqab5" path="res://art/farm/tilable grounds/böden/fruchtbarer wilder trockender boden.png" id="47_loeum"]
[ext_resource type="AudioStream" uid="uid://c43a6x43jkikl" path="res://audio/sfx/Farming/SFX_GettingWater_Well_01_Reverb.wav" id="49_d77e7"]
+[ext_resource type="Texture2D" uid="uid://blb3agipyxnal" path="res://art/farm/farming/farmobjekte/zaun/fence_door.png" id="49_i36hd"]
[ext_resource type="PackedScene" uid="uid://muuxxgvx33fp" path="res://prefabs/farm/duck.tscn" id="62_i36hd"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_wtdui"]
@@ -115,6 +114,7 @@ shader = ExtResource("13_kt1wx")
shader_parameter/tiling_scale = Vector2(10, 1)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_2vojv"]
+resource_local_to_scene = true
size = Vector2(725.109, 456)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_p4qqi"]
@@ -202,6 +202,25 @@ size = Vector2(5782, 1176)
resource_local_to_scene = true
size = Vector2(7150, 1192)
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_uxa2m"]
+shader = ExtResource("13_7p0hq")
+shader_parameter/hue_shift = 0.0
+shader_parameter/saturation_mult = 0.753
+shader_parameter/value_mult = 1.0
+shader_parameter/brightness_add = 0.0
+shader_parameter/contrast_mult = 1.0
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_lwk6t"]
+shader = ExtResource("13_7p0hq")
+shader_parameter/hue_shift = 0.0
+shader_parameter/saturation_mult = 0.871
+shader_parameter/value_mult = 1.0
+shader_parameter/brightness_add = 0.0
+shader_parameter/contrast_mult = 1.0
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_ycj14"]
+size = Vector2(707.116, 604.111)
+
[sub_resource type="AudioStreamPlaylist" id="AudioStreamPlaylist_ceriq"]
loop = false
stream_count = 1
@@ -225,7 +244,7 @@ stream_2/stream = ExtResource("49_d77e7")
[node name="BabushkaSceneFarmOutside2d" type="Node2D"]
script = ExtResource("34_e5b7x")
-_sceneToLoad = ExtResource("2_taxvr")
+_sceneNamesToLoad = PackedStringArray("res://scenes/Babushka_scene_indoor_common_room.tscn")
[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("_followNode")]
position = Vector2(3180, 1961)
@@ -984,10 +1003,11 @@ y_sort_enabled = true
[node name="Yeli" parent="YSorted" instance=ExtResource("24_wtdui")]
position = Vector2(6403, 3362)
+_timelinesToPlay = PackedStringArray("quest1_ducks_start", "quest1_ducks_end", "quest2_tomatoes_start", "quest2_tomatoes_interim", "quest2_tomatoes_end")
[node name="Vesna" parent="YSorted" node_paths=PackedStringArray("_fieldParent") instance=ExtResource("1_7wfwe")]
z_index = 1
-position = Vector2(3180, 2125)
+position = Vector2(-2031, 2949)
_fieldParent = NodePath("../Farm visuals/FieldParent")
_hoe = ExtResource("28_6b2nr")
_wateringCan = ExtResource("28_ipqaa")
@@ -1094,6 +1114,7 @@ polygon = PackedVector2Array(247.227, 43.5123, 44.7822, 43.5123, -87.2178, 45.12
[node name="EnterHouseInteraction" parent="YSorted/Farm visuals/Static" instance=ExtResource("27_klb81")]
position = Vector2(5839, 2349)
scale = Vector2(2.425, 2.425)
+_id = 0
[node name="greenery" type="Node2D" parent="YSorted/Farm visuals/Static"]
@@ -2068,42 +2089,90 @@ shape = SubResource("RectangleShape2D_p6n74")
[node name="Blocker" type="Node2D" parent="YSorted"]
[node name="Fence Door" type="Sprite2D" parent="YSorted/Blocker"]
-position = Vector2(11301, 1672)
-scale = Vector2(0.923469, 0.965054)
-texture = ExtResource("40_d77e7")
+material = SubResource("ShaderMaterial_uxa2m")
+position = Vector2(11205, 1560)
+rotation = 0.00432089
+scale = Vector2(-0.905, 0.925)
+texture = ExtResource("49_i36hd")
[node name="StaticBody2D" type="StaticBody2D" parent="YSorted/Blocker/Fence Door"]
collision_layer = 2
collision_mask = 4
[node name="CollisionShape2D" type="CollisionShape2D" parent="YSorted/Blocker/Fence Door/StaticBody2D"]
-position = Vector2(1.75458, 76)
+position = Vector2(-113.561, 193.035)
shape = SubResource("RectangleShape2D_2vojv")
[node name="Fence Door2" type="Sprite2D" parent="YSorted/Blocker"]
-position = Vector2(3701, 1691)
-scale = Vector2(0.923469, 0.965054)
-texture = ExtResource("40_d77e7")
+material = SubResource("ShaderMaterial_lwk6t")
+position = Vector2(3788, 1563)
+rotation = -0.0963081
+scale = Vector2(0.903, 0.96)
+texture = ExtResource("49_i36hd")
[node name="StaticBody2D" type="StaticBody2D" parent="YSorted/Blocker/Fence Door2"]
collision_layer = 2
collision_mask = 4
[node name="CollisionShape2D" type="CollisionShape2D" parent="YSorted/Blocker/Fence Door2/StaticBody2D"]
-position = Vector2(1.75458, 76)
-shape = SubResource("RectangleShape2D_2vojv")
+position = Vector2(-106.663, 182.891)
+shape = SubResource("RectangleShape2D_ycj14")
+
+[node name="ducks" type="Node2D" parent="YSorted"]
+
+[node name="Duck2" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(4374, 2652)
+_penTarget = NodePath("../../pen/penSlot1")
+
+[node name="Duck3" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(9259, 3194)
+_penTarget = NodePath("../../pen/penSlot2")
+
+[node name="Duck4" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(13441, 3612)
+rotation = 3.14159
+scale = Vector2(1, -1)
+_penTarget = NodePath("../../pen/penSlot3")
+
+[node name="Duck5" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(15330, 2487)
+rotation = 3.14159
+scale = Vector2(1, -1)
+_penTarget = NodePath("../../pen/penSlot4")
+
+[node name="Duck6" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(232, 2862)
+_penTarget = NodePath("../../pen/penSlot5")
+
+[node name="Duck7" parent="YSorted/ducks" node_paths=PackedStringArray("_penTarget") instance=ExtResource("62_i36hd")]
+position = Vector2(2409, 3958)
+rotation = 3.14159
+scale = Vector2(1, -1)
+_penTarget = NodePath("../../pen/penSlot6")
+
+[node name="pen" type="Node2D" parent="YSorted"]
+
+[node name="penSlot1" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-5480.62, 2109.14)
+
+[node name="penSlot2" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-5030, 2378)
+
+[node name="penSlot3" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-5413, 2856)
+
+[node name="penSlot4" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-4491, 2345)
+
+[node name="penSlot5" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-4659, 2897)
+
+[node name="penSlot6" type="Node2D" parent="YSorted/pen"]
+position = Vector2(-5016, 3361)
[node name="CanvasLayer" parent="." instance=ExtResource("32_2nee2")]
[node name="Inventory" parent="CanvasLayer" index="1"]
-anchors_preset = 7
-anchor_top = 1.0
-anchor_bottom = 1.0
-offset_left = -116.0
-offset_top = -53.0
-offset_right = 231.82
-offset_bottom = 141.4
-grow_vertical = 0
size_flags_horizontal = 6
size_flags_vertical = 10
@@ -2122,6 +2191,9 @@ offset_top = 0.228533
offset_right = -456.339
offset_bottom = 30.2285
+[node name="Control" parent="CanvasLayer" index="3"]
+visible = false
+
[node name="Audio" type="Node" parent="."]
[node name="Background Music Ramp up" type="AudioStreamPlayer2D" parent="Audio"]
@@ -2163,19 +2235,12 @@ max_distance = 2e+07
playback_type = 2
script = ExtResource("40_w3jkj")
-[node name="Duck" parent="." instance=ExtResource("62_i36hd")]
-position = Vector2(-5079, 2614)
-
-[node name="Duck2" parent="." instance=ExtResource("62_i36hd")]
-position = Vector2(-4605, 2312)
-scale = Vector2(-1, 1)
-
[connection signal="FilledWateringCan" from="YSorted/Vesna" to="Audio/SFX/FillWater SFX2" method="PlayOneShot"]
[connection signal="WateringField" from="YSorted/Vesna/FarmingControls" to="Audio/SFX/Watering SFX" method="PlayOneShot"]
[connection signal="InteractedTool" from="YSorted/Brünnen/InteractionArea" to="YSorted/Vesna" method="TryFillWateringCan"]
[connection signal="SuccessfulPickUp" from="YSorted/CanGenericPickup" to="YSorted/Vesna" method="HandlePickUp"]
[connection signal="SuccessfulPickUp" from="YSorted/RakeGenericPickup" to="YSorted/Vesna" method="HandlePickUp"]
-[connection signal="Interacted" from="YSorted/Farm visuals/Static/EnterHouseInteraction" to="." method="LoadScene"]
+[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"]
[connection signal="finished" from="Audio/Background Music Ramp up" to="Audio/Background Music loop" method="PlayFromOffset"]
diff --git a/scenes/Babushka_scene_indoor_common_room.tscn b/scenes/Babushka_scene_indoor_common_room.tscn
index e2616ec..0373359 100644
--- a/scenes/Babushka_scene_indoor_common_room.tscn
+++ b/scenes/Babushka_scene_indoor_common_room.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=24 format=3 uid="uid://bm21nqepnwaik"]
+[gd_scene load_steps=32 format=3 uid="uid://bm21nqepnwaik"]
[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_3vr4f"]
[ext_resource type="Texture2D" uid="uid://cnhsxxps2cw5" path="res://art/indoor/room export/Room_01_table.png" id="2_ubg3a"]
@@ -11,18 +11,28 @@
[ext_resource type="Texture2D" uid="uid://dhvi5404cqioa" path="res://art/indoor/room export/Room_01_window.png" id="9_aoesu"]
[ext_resource type="Texture2D" uid="uid://bpi35nxbhput8" path="res://art/indoor/room export/Room_01_pechkaDoor.png" id="10_xcryd"]
[ext_resource type="Texture2D" uid="uid://tyypifpte0pb" path="res://art/indoor/room export/Room_01_chugun.png" id="11_as3nm"]
+[ext_resource type="PackedScene" uid="uid://cqc72e4hq6bcd" path="res://prefabs/interactions/interaction_area_2d.tscn" id="11_gpagp"]
[ext_resource type="Texture2D" uid="uid://cop1vjvhwlsec" path="res://art/indoor/room export/Room_01_shelf.png" id="12_bu2a1"]
[ext_resource type="Texture2D" uid="uid://404glx32r1w8" path="res://art/indoor/room export/Room_01_bench.png" id="13_rongr"]
[ext_resource type="Texture2D" uid="uid://ckvytnpi8gcxq" path="res://art/eyes_atlas.png" id="14_d7yky"]
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="15_7a68a"]
+[ext_resource type="Script" uid="uid://31p67cdowuw4" path="res://scripts/CSharp/Common/Animation/AnimationStarter.cs" id="15_27bwy"]
+[ext_resource type="Texture2D" uid="uid://c4q12jiligcl7" path="res://art/animals/katze.png" id="15_sndxu"]
[ext_resource type="PackedScene" uid="uid://dfvgp1my5rydh" path="res://prefabs/characters/Yeli.tscn" id="16_dhsxs"]
[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="17_k0k8c"]
[ext_resource type="Script" uid="uid://bqomwxclsbhd3" path="res://scripts/CSharp/Common/Camera/CameraController.cs" id="18_dw4nn"]
+[ext_resource type="Script" uid="uid://cldtt4atgymm5" path="res://scripts/CSharp/Common/Quest/QuestTrigger.cs" id="21_blyw3"]
+[ext_resource type="Resource" uid="uid://cbpurnewhyefa" path="res://resources/quests/beetRoot.tres" id="22_yd2gv"]
+[ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="24_yd2gv"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_a2ood"]
resource_local_to_scene = true
size = Vector2(3836, 1086)
+[sub_resource type="CircleShape2D" id="CircleShape2D_gpagp"]
+resource_local_to_scene = true
+radius = 300.0
+
[sub_resource type="Animation" id="Animation_j5d18"]
length = 0.001
tracks/0/type = "value"
@@ -47,7 +57,7 @@ tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
-"values": [Vector2(-710, 0)]
+"values": [Vector2(-240, -100)]
}
tracks/2/type = "value"
tracks/2/imported = false
@@ -61,10 +71,46 @@ tracks/2/keys = {
"update": 1,
"values": [false]
}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("BackWall/Room assets/offerings/apple:position")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(229.5, 331.5)]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("BackWall/Room assets/offerings/apple:visible")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [true]
+}
+tracks/5/type = "value"
+tracks/5/imported = false
+tracks/5/enabled = true
+tracks/5/path = NodePath("BackWall/Room assets/Domovoi:rotation")
+tracks/5/interp = 1
+tracks/5/loop_wrap = true
+tracks/5/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [0.0]
+}
[sub_resource type="Animation" id="Animation_8o6or"]
resource_name = "hand_stretch"
-length = 4.0
+length = 5.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
@@ -72,10 +118,10 @@ tracks/0/path = NodePath("BackWall/Room assets/hand:scale")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
-"times": PackedFloat32Array(0.133333, 3),
-"transitions": PackedFloat32Array(0.406126, 2.46229),
+"times": PackedFloat32Array(0.7, 3.5, 3.93333),
+"transitions": PackedFloat32Array(0.406126, 2.46229, 1),
"update": 0,
-"values": [Vector2(0, 0), Vector2(1, 1)]
+"values": [Vector2(0, 0), Vector2(1.38, 1.38), Vector2(0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -84,10 +130,10 @@ tracks/1/path = NodePath("BackWall/Room01PechkaDoor:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
-"times": PackedFloat32Array(-0.0333333, 2.96667),
-"transitions": PackedFloat32Array(0.101532, 1),
+"times": PackedFloat32Array(0, 2.97015, 3.96667, 4.93333),
+"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
-"values": [Vector2(-710, 0), Vector2(-760, 0)]
+"values": [Vector2(-240, -101), Vector2(-362, -99), Vector2(-360.955, -99), Vector2(-240, -99)]
}
tracks/2/type = "value"
tracks/2/imported = false
@@ -96,10 +142,46 @@ tracks/2/path = NodePath("BackWall/Room assets/eyes:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
-"times": PackedFloat32Array(2.26667, 3.7, 3.9),
+"times": PackedFloat32Array(0.0333333, 3.3, 3.7, 3.9, 4.2),
+"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
+"update": 1,
+"values": [false, true, false, true, false]
+}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("BackWall/Room assets/offerings/apple:position")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0.0333333, 3.53333, 4),
"transitions": PackedFloat32Array(1, 1, 1),
+"update": 0,
+"values": [Vector2(229.5, 331.5), Vector2(229.5, 331.5), Vector2(76, -15)]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("BackWall/Room assets/offerings/apple:visible")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0, 3.96667),
+"transitions": PackedFloat32Array(1, 1),
"update": 1,
-"values": [true, false, true]
+"values": [true, false]
+}
+tracks/5/type = "value"
+tracks/5/imported = false
+tracks/5/enabled = true
+tracks/5/path = NodePath("BackWall/Room assets/Domovoi:rotation")
+tracks/5/interp = 1
+tracks/5/loop_wrap = true
+tracks/5/keys = {
+"times": PackedFloat32Array(0, 2.33333, 2.63333, 2.76667, 2.86667, 3, 3.1, 3.26667, 4.96667),
+"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1.03526, 1, 1),
+"update": 0,
+"values": [0.0, 0.0, -0.1309, -0.0558505, 0.144862, -0.0593412, 0.205949, 0.0, 0.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_ciwvv"]
@@ -112,9 +194,14 @@ _data = {
resource_local_to_scene = true
radius = 300.0
+[sub_resource type="CircleShape2D" id="CircleShape2D_yd2gv"]
+resource_local_to_scene = true
+radius = 472.086
+
[node name="IndoorTest" type="Node2D"]
y_sort_enabled = true
script = ExtResource("1_3vr4f")
+_sceneNamesToLoad = PackedStringArray("res://scenes/Babushka_scene_indoor_vesnas_room.tscn", "res://scenes/Babushka_scene_farm_outside_2d.tscn")
[node name="Foreground" type="Node" parent="."]
@@ -235,11 +322,17 @@ region_rect = Rect2(1020, 338, 607, 757)
[node name="Room01PechkaDoor" type="Sprite2D" parent="BackWall"]
z_index = -50
-position = Vector2(-248, -96)
+position = Vector2(-240, -100)
texture = ExtResource("10_xcryd")
region_enabled = true
region_rect = Rect2(2360, 864, 356, 251)
+[node name="InteractionArea" parent="BackWall/Room01PechkaDoor" instance=ExtResource("11_gpagp")]
+scale = Vector2(1.8, 1.96)
+
+[node name="CollisionShape3D" parent="BackWall/Room01PechkaDoor/InteractionArea/Area2D" index="0"]
+shape = SubResource("CircleShape2D_gpagp")
+
[node name="Room01Chugun" type="Sprite2D" parent="BackWall"]
z_index = -40
position = Vector2(16, -560)
@@ -270,6 +363,13 @@ texture = ExtResource("13_rongr")
region_enabled = true
region_rect = Rect2(1156, 1185, 940, 189)
+[node name="Katze" type="Sprite2D" parent="BackWall"]
+z_index = -10
+position = Vector2(-4051, 332)
+scale = Vector2(2, 2)
+texture = ExtResource("15_sndxu")
+offset = Vector2(-8, -126)
+
[node name="Room assets" type="Node" parent="BackWall"]
[node name="wood" type="Sprite2D" parent="BackWall/Room assets"]
@@ -284,9 +384,9 @@ region_rect = Rect2(2244, 763, 274, 91)
[node name="Domovoi" type="Sprite2D" parent="BackWall/Room assets"]
z_index = -10
y_sort_enabled = true
-position = Vector2(335, 474.5)
+position = Vector2(336.487, 275.616)
texture = ExtResource("4_27bwy")
-offset = Vector2(0, -296)
+offset = Vector2(-14.6475, -97.651)
region_enabled = true
region_rect = Rect2(3157, 688, 118.519, 221)
@@ -309,19 +409,22 @@ offset = Vector2(0, -296)
region_enabled = true
region_rect = Rect2(2624, 435, 49, 76)
-[node name="hand" type="Sprite2D" parent="BackWall/Room assets"]
+[node name="hand" type="Sprite2D" parent="BackWall/Room assets" node_paths=PackedStringArray("_animationPlayer")]
z_index = -10
y_sort_enabled = true
-position = Vector2(47.5969, 6.18)
+position = Vector2(-101, -6)
rotation = -0.0663225
scale = Vector2(1e-05, 1e-05)
texture = ExtResource("4_27bwy")
offset = Vector2(43.3898, 128.128)
region_enabled = true
region_rect = Rect2(3362, 139, 101, 269)
+script = ExtResource("15_27bwy")
+_animationPlayer = NodePath("SpiritAnimation")
+_animationName = "hand_stretch"
+_repeatable = false
[node name="SpiritAnimation" type="AnimationPlayer" parent="BackWall/Room assets/hand"]
-active = false
root_node = NodePath("../../../..")
libraries = {
&"": SubResource("AnimationLibrary_ciwvv")
@@ -356,13 +459,14 @@ region_rect = Rect2(2761, 161, 135, 199)
[node name="eyes" type="Sprite2D" parent="BackWall/Room assets"]
visible = false
z_index = -10
-position = Vector2(32, -72)
+position = Vector2(-169, -80)
scale = Vector2(0.4, 0.4)
texture = ExtResource("14_d7yky")
region_enabled = true
region_rect = Rect2(2647, 15, 286, 183)
[node name="offerings" type="Node2D" parent="BackWall/Room assets"]
+position = Vector2(-205, -8)
[node name="apple" type="Sprite2D" parent="BackWall/Room assets/offerings"]
z_index = -1
@@ -391,21 +495,34 @@ position = Vector2(-1464, 136)
[node name="Yeli" parent="." instance=ExtResource("16_dhsxs")]
position = Vector2(-2912, 432)
+_timelinesToPlay = PackedStringArray("quest3_beets_start")
[node name="CollisionShape3D" parent="Yeli/InteractionArea/Area2D" index="0"]
position = Vector2(-205.348, 131.907)
shape = SubResource("CircleShape2D_wuntg")
-[node name="TalkingControl" parent="Yeli" index="1"]
-_timelinesToPlay = PackedStringArray("yeli_intro_05")
+[node name="Label" parent="Yeli/InteractionArea" index="1"]
+offset_left = -332.62
+offset_top = -99.8217
+offset_right = -85.6204
+offset_bottom = 3.17825
[node name="AnimatedSprite" parent="Yeli/TalkingControl" index="0"]
position = Vector2(-576, 368)
+[node name="CollisionShape2D" parent="Yeli/AnimatableBody2D" index="0"]
+position = Vector2(-565, 464)
+
[node name="dialogic_toggle" type="Node2D" parent="Yeli"]
script = ExtResource("17_k0k8c")
metadata/_custom_type_script = "uid://cvkw4qd2hxksi"
+[node name="Beetroot Quest trigger" type="Node2D" parent="Yeli"]
+script = ExtResource("21_blyw3")
+questResource = ExtResource("22_yd2gv")
+toStatus = 1
+makeCurrent = true
+
[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("_followNode")]
position = Vector2(-1534, -26)
offset = Vector2(0, -200)
@@ -418,8 +535,27 @@ editor_draw_limits = true
script = ExtResource("18_dw4nn")
_followNode = NodePath("../Vesna/CharacterBody2D")
-[connection signal="timelineEnded" from="Yeli/dialogic_toggle" to="." method="Quit"]
+[node name="CanvasLayer" parent="." instance=ExtResource("24_yd2gv")]
+
+[node name="VesnasRoomDoor" parent="." instance=ExtResource("11_gpagp")]
+position = Vector2(-4855, 32)
+_id = 0
+
+[node name="CollisionShape3D" parent="VesnasRoomDoor/Area2D" index="0"]
+shape = SubResource("CircleShape2D_yd2gv")
+
+[node name="OutsideDoor" parent="." instance=ExtResource("11_gpagp")]
+position = Vector2(929, 32)
+_id = 1
+
+[connection signal="Interacted" from="BackWall/Room01PechkaDoor/InteractionArea" to="BackWall/Room01PechkaDoor/InteractionArea" method="ToggleActive"]
+[connection signal="Interacted" from="BackWall/Room01PechkaDoor/InteractionArea" to="BackWall/Room assets/hand" method="PlayAnimation"]
+[connection signal="timelineEnded" from="Yeli/dialogic_toggle" to="Yeli/Beetroot Quest trigger" method="Trigger"]
+[connection signal="InteractedTool" from="VesnasRoomDoor" to="." method="LoadSceneAtIndex"]
+[connection signal="InteractedTool" from="OutsideDoor" to="." method="LoadSceneAtIndex"]
+[editable path="BackWall/Room01PechkaDoor/InteractionArea"]
[editable path="Vesna"]
[editable path="Yeli"]
[editable path="Yeli/InteractionArea"]
+[editable path="VesnasRoomDoor"]
diff --git a/scenes/Babushka_scene_indoor_vesnas_room.tscn b/scenes/Babushka_scene_indoor_vesnas_room.tscn
new file mode 100644
index 0000000..5055470
--- /dev/null
+++ b/scenes/Babushka_scene_indoor_vesnas_room.tscn
@@ -0,0 +1,110 @@
+[gd_scene load_steps=11 format=3 uid="uid://ceaa2qj2bmw43"]
+
+[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_c6eln"]
+[ext_resource type="Texture2D" uid="uid://cugtxcfuds31r" path="res://art/indoor/Babushka_bg_01.png" id="2_j25a2"]
+[ext_resource type="PackedScene" uid="uid://cqc72e4hq6bcd" path="res://prefabs/interactions/interaction_area_2d.tscn" id="8_phqdf"]
+[ext_resource type="Texture2D" uid="uid://cop1vjvhwlsec" path="res://art/indoor/room export/Room_01_shelf.png" id="13_11fdt"]
+[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="18_3gevq"]
+[ext_resource type="Script" uid="uid://bqomwxclsbhd3" path="res://scripts/CSharp/Common/Camera/CameraController.cs" id="23_408bg"]
+[ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="24_xwo8y"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_l0jrn"]
+resource_local_to_scene = true
+size = Vector2(3836, 1086)
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_2spkc"]
+size = Vector2(238.25, 189.75)
+
+[sub_resource type="CircleShape2D" id="CircleShape2D_2spkc"]
+resource_local_to_scene = true
+radius = 509.071
+
+[node name="VesnasRoom" type="Node2D"]
+y_sort_enabled = true
+script = ExtResource("1_c6eln")
+_sceneNamesToLoad = PackedStringArray("res://scenes/Babushka_scene_indoor_common_room.tscn")
+
+[node name="Colliders" type="Node2D" parent="."]
+position = Vector2(1297, 5292)
+scale = Vector2(4, 4)
+
+[node name="SideColliderLeft" type="StaticBody2D" parent="Colliders"]
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Colliders/SideColliderLeft"]
+position = Vector2(-2892, -1168)
+shape = SubResource("RectangleShape2D_l0jrn")
+
+[node name="SideColliderRight" type="StaticBody2D" parent="Colliders"]
+position = Vector2(4858, 0)
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Colliders/SideColliderRight"]
+position = Vector2(-2892, -1168)
+shape = SubResource("RectangleShape2D_l0jrn")
+
+[node name="TopCollider" type="StaticBody2D" parent="Colliders"]
+position = Vector2(2448.75, -595)
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Colliders/TopCollider"]
+position = Vector2(-2892, -1168)
+shape = SubResource("RectangleShape2D_l0jrn")
+
+[node name="BottomCollider" type="StaticBody2D" parent="Colliders"]
+position = Vector2(2495.5, 757.75)
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Colliders/BottomCollider"]
+position = Vector2(-2892, -1168)
+shape = SubResource("RectangleShape2D_l0jrn")
+
+[node name="BedCollider" type="StaticBody2D" parent="Colliders"]
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Colliders/BedCollider"]
+position = Vector2(-828.625, -1230.38)
+shape = SubResource("RectangleShape2D_2spkc")
+
+[node name="BackWall" type="Node" parent="."]
+
+[node name="Room01Walls2" type="Sprite2D" parent="BackWall"]
+z_index = -100
+position = Vector2(4992, -487)
+scale = Vector2(2, 2)
+texture = ExtResource("2_j25a2")
+offset = Vector2(-2768, 264)
+
+[node name="Room01Shelf" type="Sprite2D" parent="BackWall"]
+z_index = -50
+position = Vector2(-1978, -678)
+texture = ExtResource("13_11fdt")
+region_enabled = true
+region_rect = Rect2(1846, 471, 348, 490)
+
+[node name="Vesna" parent="." instance=ExtResource("18_3gevq")]
+position = Vector2(-471, 185)
+
+[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("_followNode")]
+position = Vector2(-1534, -26)
+offset = Vector2(0, -200)
+zoom = Vector2(0.5, 0.5)
+limit_left = -2600
+limit_top = -1400
+limit_right = 1500
+limit_bottom = 1400
+editor_draw_limits = true
+script = ExtResource("23_408bg")
+_followNode = NodePath("../Vesna/CharacterBody2D")
+
+[node name="CanvasLayer" parent="." instance=ExtResource("24_xwo8y")]
+
+[node name="BedInteraction" parent="." instance=ExtResource("8_phqdf")]
+position = Vector2(-1429, 487)
+
+[node name="DoorInteraction" parent="." instance=ExtResource("8_phqdf")]
+position = Vector2(777, 201)
+_id = 0
+
+[node name="CollisionShape3D" parent="DoorInteraction/Area2D" index="0"]
+shape = SubResource("CircleShape2D_2spkc")
+
+[connection signal="Interacted" from="DoorInteraction" to="." method="LoadScene"]
+
+[editable path="Vesna"]
+[editable path="DoorInteraction"]
diff --git a/scenes/Babushka_scene_startMenu.tscn b/scenes/Babushka_scene_startMenu.tscn
index 0b5c964..6ab29a3 100644
--- a/scenes/Babushka_scene_startMenu.tscn
+++ b/scenes/Babushka_scene_startMenu.tscn
@@ -1,12 +1,11 @@
[gd_scene load_steps=4 format=3 uid="uid://c6wnoif01ltld"]
[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_fj2fh"]
-[ext_resource type="Texture2D" uid="uid://bys8kq256upf3" path="res://art/ui/StartScreen/Trailer01.png" id="1_qerdf"]
-[ext_resource type="PackedScene" uid="uid://gigb28qk8t12" path="res://scenes/Babushka_scene_farm_outside_2d.tscn" id="2_r0y6o"]
+[ext_resource type="Texture2D" uid="uid://c7atj6ohlmir3" path="res://art/ui/StartScreen/titlescreen.png" id="3_r0y6o"]
+[ext_resource type="Texture2D" uid="uid://du612t3xytly3" path="res://art/ui/StartScreen/babushkalog_white.png" id="4_dl0t1"]
[node name="BabushkaSceneStartMenu" type="Node2D"]
script = ExtResource("1_fj2fh")
-_sceneToLoad = ExtResource("2_r0y6o")
[node name="CanvasLayer" type="CanvasLayer" parent="."]
@@ -16,7 +15,7 @@ anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
-texture = ExtResource("1_qerdf")
+texture = ExtResource("3_r0y6o")
expand_mode = 2
stretch_mode = 6
metadata/_edit_use_anchors_ = true
@@ -24,19 +23,43 @@ metadata/_edit_use_anchors_ = true
[node name="Start" type="Button" parent="CanvasLayer/TextureRect"]
custom_minimum_size = Vector2(100, 30)
layout_mode = 1
-anchors_preset = 7
-anchor_left = 0.5
-anchor_top = 1.0
-anchor_right = 0.5
-anchor_bottom = 1.0
-offset_left = -76.0
-offset_top = -98.0
-offset_right = 24.0
-offset_bottom = -67.0
-grow_horizontal = 2
-grow_vertical = 0
+anchors_preset = 4
+anchor_top = 0.5
+anchor_bottom = 0.5
+offset_left = 200.0
+offset_top = -15.5
+offset_right = 400.0
+offset_bottom = 24.5
+grow_vertical = 2
scale = Vector2(2, 2)
+toggle_mode = true
text = "Start"
-icon_alignment = 1
+
+[node name="Quit" type="Button" parent="CanvasLayer/TextureRect"]
+custom_minimum_size = Vector2(100, 30)
+layout_mode = 1
+anchors_preset = 4
+anchor_top = 0.5
+anchor_bottom = 0.5
+offset_left = 200.0
+offset_top = 97.0
+offset_right = 400.0
+offset_bottom = 137.0
+grow_vertical = 2
+scale = Vector2(2, 2)
+toggle_mode = true
+text = "Quit
+"
+
+[node name="Text" type="TextureRect" parent="CanvasLayer/TextureRect"]
+layout_mode = 1
+offset_left = 50.0
+offset_top = -100.0
+offset_right = 1970.0
+offset_bottom = 980.0
+scale = Vector2(0.5, 0.5)
+texture = ExtResource("4_dl0t1")
+stretch_mode = 3
[connection signal="pressed" from="CanvasLayer/TextureRect/Start" to="." method="LoadScene"]
+[connection signal="pressed" from="CanvasLayer/TextureRect/Quit" to="." method="Quit"]
diff --git a/scenes/SceneTransition.tscn b/scenes/SceneTransition.tscn
new file mode 100644
index 0000000..6073ff3
--- /dev/null
+++ b/scenes/SceneTransition.tscn
@@ -0,0 +1,123 @@
+[gd_scene load_steps=6 format=3 uid="uid://cxvdb2w1sxui4"]
+
+[ext_resource type="Script" uid="uid://bo2jik2jtuqlw" path="res://scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs" id="1_e0bkc"]
+
+[sub_resource type="Animation" id="Animation_t7str"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("SceneFadeAnimation/ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Color(1, 1, 1, 0)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("SceneFadeAnimation/ColorRect:mouse_filter")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [2]
+}
+
+[sub_resource type="Animation" id="Animation_e43hv"]
+resource_name = "fadeIn"
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("SceneFadeAnimation/ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 0.966667),
+"transitions": PackedFloat32Array(1, 1),
+"update": 0,
+"values": [Color(0, 0, 0, 0), Color(0, 0, 0, 1)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("SceneFadeAnimation/ColorRect:mouse_filter")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0, 0.2),
+"transitions": PackedFloat32Array(1, 1),
+"update": 1,
+"values": [2, 0]
+}
+tracks/2/type = "method"
+tracks/2/imported = false
+tracks/2/enabled = true
+tracks/2/path = NodePath(".")
+tracks/2/interp = 1
+tracks/2/loop_wrap = true
+tracks/2/keys = {
+"times": PackedFloat32Array(0.966667),
+"transitions": PackedFloat32Array(1),
+"values": [{
+"args": [],
+"method": &"OnFadeInCompletedThreaded"
+}]
+}
+
+[sub_resource type="Animation" id="Animation_d3jfo"]
+resource_name = "fadeOut"
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("SceneFadeAnimation/ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 0.966667),
+"transitions": PackedFloat32Array(1, 1),
+"update": 0,
+"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("SceneFadeAnimation/ColorRect:mouse_filter")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0.0333333, 0.966667),
+"transitions": PackedFloat32Array(1, 1),
+"update": 1,
+"values": [0, 2]
+}
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_5o782"]
+_data = {
+&"RESET": SubResource("Animation_t7str"),
+&"fadeIn": SubResource("Animation_e43hv"),
+&"fadeOut": SubResource("Animation_d3jfo")
+}
+
+[node name="SceneTransition" type="CanvasLayer" node_paths=PackedStringArray("animationPlayer")]
+script = ExtResource("1_e0bkc")
+animationPlayer = NodePath("SceneFadeAnimation")
+
+[node name="SceneFadeAnimation" type="AnimationPlayer" parent="."]
+libraries = {
+&"": SubResource("AnimationLibrary_5o782")
+}
+
+[node name="ColorRect" type="ColorRect" parent="SceneFadeAnimation"]
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+mouse_filter = 2
+color = Color(1, 1, 1, 0)
diff --git a/scripts/CSharp/Common/Animation/AnimationStarter.cs b/scripts/CSharp/Common/Animation/AnimationStarter.cs
new file mode 100644
index 0000000..e3d8974
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/AnimationStarter.cs
@@ -0,0 +1,24 @@
+using Godot;
+using System;
+
+public partial class AnimationStarter : Node2D
+{
+ [Export] private AnimationPlayer _animationPlayer;
+ [Export] private string _animationName;
+ [Export] private bool _repeatable = true;
+
+ private bool _played;
+
+ public void PlayAnimation()
+ {
+ if (_animationPlayer == null || string.IsNullOrEmpty(_animationName))
+ return;
+
+ if (!_repeatable && _played)
+ return;
+
+ _animationPlayer.Play(_animationName);
+ _played = true;
+ }
+
+}
diff --git a/scripts/CSharp/Common/Animation/AnimationStarter.cs.uid b/scripts/CSharp/Common/Animation/AnimationStarter.cs.uid
new file mode 100644
index 0000000..28b1378
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/AnimationStarter.cs.uid
@@ -0,0 +1 @@
+uid://31p67cdowuw4
diff --git a/scripts/CSharp/Common/Animation/Duck.cs b/scripts/CSharp/Common/Animation/Duck.cs
new file mode 100644
index 0000000..008722a
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/Duck.cs
@@ -0,0 +1,88 @@
+using Godot;
+
+namespace Babushka.scripts.CSharp.Common.Animation;
+
+public partial class Duck : Node2D
+{
+ [Export] private CharacterBody2D _characterBody;
+ [Export] private AudioPlayer _nakNakAudio;
+ [Export] private AudioPlayer _wingFlapAudio;
+ [Export] private Node2D _vesna;
+ [Export] private float _runningSpeed = 3f;
+ [Export] private float _slowSpeed = 0.5f;
+ [Export] private float _minDistanceToVesna = 1000f;
+ [Export] private Node2D _duckRight;
+ [Export] private Node2D _duckLeft;
+
+ private bool _vesnaInReach = false;
+ private bool _penEntered = false;
+ private int _numberOfFramesPerDirection = 1000;
+ private int _currentFramesThisDirection = 0;
+ private bool _duckLookingRight = true;
+ private Vector2 _movementVector = Vector2.Zero;
+
+
+ public void PenEntered()
+ {
+ _nakNakAudio.PlayOneShot();
+ _penEntered = true;
+ }
+
+ public override void _Draw()
+ {
+ DrawLine(_characterBody.GlobalPosition, _movementVector, new Color(255, 0, 0), 2f, false);
+ }
+
+ public override void _Process(double delta)
+ {
+ if (_penEntered)
+ {
+ _characterBody.Velocity = Vector2.Zero;
+ _characterBody.MoveAndSlide();
+ GD.Print("Pen entered.");
+ return;
+ }
+
+ float currentDistance = _vesna.GlobalPosition.DistanceTo(_characterBody.GlobalPosition);
+
+ if (currentDistance < _minDistanceToVesna)
+ {
+ _movementVector = new Vector2( _characterBody.GlobalPosition.X - _vesna.GlobalPosition.X,
+ _characterBody.GlobalPosition.Y - _vesna.GlobalPosition.Y).Normalized();
+ _movementVector *= _runningSpeed;
+ _characterBody.Velocity = _movementVector;
+ _characterBody.MoveAndSlide();
+ }
+ else
+ {
+ if (_currentFramesThisDirection >= _numberOfFramesPerDirection)
+ {
+ _currentFramesThisDirection = 0;
+ FastNoiseLite fastNoiseLite = new FastNoiseLite();
+ _movementVector = new Vector2(fastNoiseLite.GetNoise1D(_characterBody.GlobalPosition.X * Time.GetTicksMsec()), fastNoiseLite.GetNoise1D(_characterBody.GlobalPosition.Y * Time.GetTicksMsec())).Normalized();
+ }
+
+ _currentFramesThisDirection++;
+ _characterBody.Velocity = _movementVector * _slowSpeed;
+ _characterBody.MoveAndSlide();
+ }
+
+ // if läuftNachLinks && schautNachRechts || läuftNachRechts && schautNachLinks
+ if ((_characterBody.Velocity.X < 0 && _duckLookingRight)
+ || (_characterBody.Velocity.X > 0 && !_duckLookingRight))
+ {
+ if (_duckLookingRight)
+ {
+ _duckRight.Visible = false;
+ _duckLeft.Visible = true;
+ _duckLookingRight = false;
+ }
+ else
+ {
+ _duckRight.Visible = true;
+ _duckLeft.Visible = false;
+ _duckLookingRight = true;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/Animation/Duck.cs.uid b/scripts/CSharp/Common/Animation/Duck.cs.uid
new file mode 100644
index 0000000..45e1d1a
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/Duck.cs.uid
@@ -0,0 +1 @@
+uid://c4qxtuym7syjc
diff --git a/scripts/CSharp/Common/Animation/PenCollider.cs b/scripts/CSharp/Common/Animation/PenCollider.cs
new file mode 100644
index 0000000..8cdc312
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/PenCollider.cs
@@ -0,0 +1,12 @@
+using Godot;
+
+namespace Babushka.scripts.CSharp.Common.Animation;
+
+public partial class PenCollider : Area2D
+{
+ // bisons vorschlag:
+
+ // duck entered pen -> pen detects collision,
+ // collision reffences somehow to the duck -> pen "catches" duck object -> sets duck "i am your pen now"
+
+}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/Animation/PenCollider.cs.uid b/scripts/CSharp/Common/Animation/PenCollider.cs.uid
new file mode 100644
index 0000000..869a142
--- /dev/null
+++ b/scripts/CSharp/Common/Animation/PenCollider.cs.uid
@@ -0,0 +1 @@
+uid://fvo04di6k7we
diff --git a/scripts/CSharp/Common/CharacterControls/InteractionArea2D.cs b/scripts/CSharp/Common/CharacterControls/InteractionArea2D.cs
index 057a24f..5c741fe 100644
--- a/scripts/CSharp/Common/CharacterControls/InteractionArea2D.cs
+++ b/scripts/CSharp/Common/CharacterControls/InteractionArea2D.cs
@@ -13,19 +13,30 @@ public partial class InteractionArea2D : Node2D
[Signal] public delegate void InteractedToolEventHandler(int id); // TODO: remove
[Signal] public delegate void InteractedEventHandler();
+ public bool IsActive { get; set; } = true;
+
public void OnPlayerEntered(Node2D player)
{
+ if (!IsActive)
+ return;
+
if(_showLabel)
_label.Show();
}
public void OnPlayerExited(Node2D player)
{
+ if (!IsActive)
+ return;
+
_label.Hide();
}
public override void _Input(InputEvent @event)
{
+ if (!IsActive)
+ return;
+
if (@event.IsAction("interact") && @event.IsPressed() && _area.HasOverlappingBodies())
{
_label.Hide();
@@ -36,9 +47,18 @@ public partial class InteractionArea2D : Node2D
public void SetSpriteActiveState(bool success, int id) // TODO: remove
{
+ if(!IsActive)
+ return;
+
if (_id == id)
{
_sprites.SwitchState(!success);
}
}
+
+ public void ToggleActive()
+ {
+ IsActive = !IsActive;
+ _label.Hide();
+ }
}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs b/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs
new file mode 100644
index 0000000..d08de8c
--- /dev/null
+++ b/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs
@@ -0,0 +1,33 @@
+using Godot;
+
+namespace Babushka.scripts.CSharp.Common.NPC;
+
+public partial class DialogicOverlayStarter : Node2D
+{
+ [Export] private string[] _timelinesToPlay;
+ [Export] private int _timelineIndex = 0;
+ [Export] private bool _startOnReady = true;
+
+ [Signal] public delegate void DialogueEventHandler(string timelineName);
+
+ public override void _Ready()
+ {
+ if (_startOnReady)
+ ToggleDialogue();
+ }
+
+ public void ToggleDialogue()
+ {
+ ToggleDialogue(_timelinesToPlay[_timelineIndex]);
+ }
+
+ public void ToggleDialogue(int index)
+ {
+ ToggleDialogue(_timelinesToPlay[index]);
+ }
+
+ public void ToggleDialogue(string timelineName)
+ {
+ EmitSignal(SignalName.Dialogue, timelineName);
+ }
+}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs.uid b/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs.uid
new file mode 100644
index 0000000..ac4d25a
--- /dev/null
+++ b/scripts/CSharp/Common/NPC/DialogicOverlayStarter.cs.uid
@@ -0,0 +1 @@
+uid://dnipeibppjirs
diff --git a/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs b/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs
new file mode 100644
index 0000000..eeaff47
--- /dev/null
+++ b/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs
@@ -0,0 +1,88 @@
+using Godot;
+
+namespace Babushka.scripts.CSharp.Common.SceneManagement;
+public partial class SceneTransitionThreaded : CanvasLayer
+{
+ public static SceneTransitionThreaded Instance { get; private set; }
+
+ // set to true if don't wanna use it
+ public bool userCodeLoadCompleted = true;
+
+ private ThreadedLoadingStateEn threadedLoadingState = ThreadedLoadingStateEn._none;
+ public enum ThreadedLoadingStateEn
+ {
+ _none,
+ _fading_in,
+ _loading,
+ _loading_user_code
+ }
+
+ [Export] private AnimationPlayer animationPlayer;
+ private string scenePathThreaded = "";
+
+ public override void _EnterTree()
+ {
+ Instance = this;
+ }
+
+ public override void _Process(double delta)
+ {
+ CheckLoadThreaded();
+ }
+
+ private void CheckLoadThreaded()
+ {
+ if (scenePathThreaded == "")
+ { return; }
+
+ if (threadedLoadingState == ThreadedLoadingStateEn._loading && ResourceLoader.LoadThreadedGetStatus(scenePathThreaded) == ResourceLoader.ThreadLoadStatus.Loaded)
+ {
+ OnResourceLoadThreadedComplete();
+ }
+ else if (threadedLoadingState == ThreadedLoadingStateEn._loading_user_code && userCodeLoadCompleted)
+ {
+ OnResourceLoadThreadedCompleteUserCode();
+ }
+ }
+
+ public async void ChangeSceneToFile(string scenePath)
+ {
+ animationPlayer.Play("fadeIn");
+ //yield(animationPlayer, "animation_finished");
+ await ToSignal(animationPlayer, "animation_finished");
+ GetTree().ChangeSceneToFile(scenePath);
+ animationPlayer.Play("fadeOut");
+ }
+
+ public void OnFadeInCompletedThreaded()
+ {
+ if (scenePathThreaded == "")
+ { return; }
+
+ ResourceLoader.LoadThreadedRequest(scenePathThreaded);
+ threadedLoadingState = ThreadedLoadingStateEn._loading;
+ }
+
+ // https://docs.godotengine.org/en/stable/tutorials/io/background_loading.html
+ public void ChangeSceneToFileThreaded(string scenePath)
+ {
+ scenePathThreaded = scenePath;
+ animationPlayer.Play("fadeIn");
+ threadedLoadingState = ThreadedLoadingStateEn._fading_in;
+ }
+
+ private void OnResourceLoadThreadedComplete()
+ {
+ PackedScene loadedScene = (PackedScene)ResourceLoader.LoadThreadedGet(scenePathThreaded);
+ //Node sceneInstance = loadedScene.Instantiate();
+ GetTree().ChangeSceneToPacked(loadedScene);
+ threadedLoadingState = ThreadedLoadingStateEn._loading_user_code;
+ }
+
+ private void OnResourceLoadThreadedCompleteUserCode()
+ {
+ animationPlayer.Play("fadeOut");
+ scenePathThreaded = "";
+ threadedLoadingState = ThreadedLoadingStateEn._none;
+ }
+}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs.uid b/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs.uid
new file mode 100644
index 0000000..9f3a17b
--- /dev/null
+++ b/scripts/CSharp/Common/SceneManagement/SceneTransitionThreaded.cs.uid
@@ -0,0 +1 @@
+uid://bo2jik2jtuqlw
diff --git a/scripts/CSharp/Common/SceneTransition.cs b/scripts/CSharp/Common/SceneTransition.cs
index ce16126..e6c5426 100644
--- a/scripts/CSharp/Common/SceneTransition.cs
+++ b/scripts/CSharp/Common/SceneTransition.cs
@@ -1,23 +1,29 @@
+using Babushka.scripts.CSharp.Common.SceneManagement;
using Godot;
namespace Babushka.scripts.CSharp.Common;
public partial class SceneTransition : Node
{
- [Export] private PackedScene _sceneToLoad;
- [Export] private Node? _sceneInstanceParent;
+ [Export] private string[] _sceneNamesToLoad;
+ [Export] private int _sceneIndex;
[Export] private bool _unloadSelf = true;
public void LoadScene()
{
- Node sceneInstance = _sceneToLoad.Instantiate();
- if(_sceneInstanceParent != null)
- _sceneInstanceParent.AddChild(sceneInstance);
- else
- {
- GetTree().Root.AddChild(sceneInstance);
- }
+ LoadSceneAtIndex(0);
+ }
+ public void LoadSceneAtIndex(int index)
+ {
+ string sceneName = _sceneNamesToLoad[index];
+ SceneTransitionThreaded.Instance.ChangeSceneToFileThreaded(sceneName);
+ UnloadAfterDelay();
+ }
+
+ private async void UnloadAfterDelay()
+ {
+ await ToSignal(GetTree().CreateTimer(1.0f), "timeout"); // 1.0f seconds
if (_unloadSelf)
{
QueueFree();
diff --git a/scripts/CSharp/Common/Temp/MVPDuck.cs b/scripts/CSharp/Common/Temp/MVPDuck.cs
new file mode 100644
index 0000000..e0197ac
--- /dev/null
+++ b/scripts/CSharp/Common/Temp/MVPDuck.cs
@@ -0,0 +1,36 @@
+using System.Threading.Tasks;
+using Godot;
+
+namespace Babushka.scripts.CSharp.Common.Temp;
+
+///
+/// Temporary Duck behaviour to make sure we can use them in the first showcase
+///
+public partial class MVPDuck : Node2D
+{
+ [Export] private Node2D _penTarget;
+ [Export] private int _transferDelayMs;
+ [Export] private AnimationPlayer _animationPlayer;
+ [Export] private string _flapAnimationName = "flapFlap";
+
+
+ public void TransferToTargetAfterDelay()
+ {
+ MoveAfterDelay();
+ PlayAnimation();
+ }
+
+ private void PlayAnimation()
+ {
+ _animationPlayer.CurrentAnimation = _flapAnimationName;
+ _animationPlayer.Play();
+ }
+
+ public async void MoveAfterDelay()
+ {
+ await ToSignal(GetTree().CreateTimer(1.0f), "timeout"); // 1.0f seconds
+ Position = _penTarget.GlobalPosition; // Now this works!
+ }
+
+
+}
\ No newline at end of file
diff --git a/scripts/CSharp/Common/Temp/MVPDuck.cs.uid b/scripts/CSharp/Common/Temp/MVPDuck.cs.uid
new file mode 100644
index 0000000..7b470d1
--- /dev/null
+++ b/scripts/CSharp/Common/Temp/MVPDuck.cs.uid
@@ -0,0 +1 @@
+uid://7m1rt7agb6rm