diff --git a/asset/art/animation/c01_小小蝶_背面抬头/1.png b/asset/art/animation/c01_小小蝶_背面抬头/1.png new file mode 100755 index 00000000..319f9e5c Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面抬头/1.png differ diff --git a/asset/art/animation/c01_小小蝶_背面抬头/1.png.import b/asset/art/animation/c01_小小蝶_背面抬头/1.png.import new file mode 100644 index 00000000..c460ae29 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面抬头/1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://qidgsi8po28g" +path="res://.godot/imported/1.png-0b4a086c10435029061d56eb3934b80a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面抬头/1.png" +dest_files=["res://.godot/imported/1.png-0b4a086c10435029061d56eb3934b80a.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/asset/art/animation/c01_小小蝶_背面抬头/2.png b/asset/art/animation/c01_小小蝶_背面抬头/2.png new file mode 100755 index 00000000..5707c7f9 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面抬头/2.png differ diff --git a/asset/art/animation/c01_小小蝶_背面抬头/2.png.import b/asset/art/animation/c01_小小蝶_背面抬头/2.png.import new file mode 100644 index 00000000..5b1a8a88 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面抬头/2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c2qo5n5kdbb1i" +path="res://.godot/imported/2.png-2aad7bf34a702d4af13ec99219ebf490.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面抬头/2.png" +dest_files=["res://.godot/imported/2.png-2aad7bf34a702d4af13ec99219ebf490.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/asset/art/animation/c01_小小蝶_背面抬头/3.png b/asset/art/animation/c01_小小蝶_背面抬头/3.png new file mode 100755 index 00000000..eaeed912 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面抬头/3.png differ diff --git a/asset/art/animation/c01_小小蝶_背面抬头/3.png.import b/asset/art/animation/c01_小小蝶_背面抬头/3.png.import new file mode 100644 index 00000000..fed999fa --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面抬头/3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b17hualhwripu" +path="res://.godot/imported/3.png-4eedb4a7a21f50964cf5f23e98fa1e92.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面抬头/3.png" +dest_files=["res://.godot/imported/3.png-4eedb4a7a21f50964cf5f23e98fa1e92.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/asset/art/animation/c01_小小蝶_背面抬头/4.png b/asset/art/animation/c01_小小蝶_背面抬头/4.png new file mode 100755 index 00000000..5707c7f9 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面抬头/4.png differ diff --git a/asset/art/animation/c01_小小蝶_背面抬头/4.png.import b/asset/art/animation/c01_小小蝶_背面抬头/4.png.import new file mode 100644 index 00000000..78d4d114 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面抬头/4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://kl8hklflrruw" +path="res://.godot/imported/4.png-3bd8f54a6c7aaefdca297285dcc02706.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面抬头/4.png" +dest_files=["res://.godot/imported/4.png-3bd8f54a6c7aaefdca297285dcc02706.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/asset/art/animation/c01_小小蝶_背面蹲下/1.png b/asset/art/animation/c01_小小蝶_背面蹲下/1.png new file mode 100755 index 00000000..58c726e2 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/1.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/1.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/1.png.import new file mode 100644 index 00000000..1c23b8c4 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dd01nj0cxeq4s" +path="res://.godot/imported/1.png-8e34a94be437da74237eefe25303b3b9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/1.png" +dest_files=["res://.godot/imported/1.png-8e34a94be437da74237eefe25303b3b9.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/asset/art/animation/c01_小小蝶_背面蹲下/10.png b/asset/art/animation/c01_小小蝶_背面蹲下/10.png new file mode 100755 index 00000000..58c726e2 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/10.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/10.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/10.png.import new file mode 100644 index 00000000..b0ab492a --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/10.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bw8icdmlelyaa" +path="res://.godot/imported/10.png-5428ada018a00020a073bb4b5442e474.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/10.png" +dest_files=["res://.godot/imported/10.png-5428ada018a00020a073bb4b5442e474.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/asset/art/animation/c01_小小蝶_背面蹲下/2.png b/asset/art/animation/c01_小小蝶_背面蹲下/2.png new file mode 100755 index 00000000..87f74313 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/2.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/2.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/2.png.import new file mode 100644 index 00000000..0d7ced59 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dvdbsejs4l2vk" +path="res://.godot/imported/2.png-f9a3c55cc135f2ff17bebc9a920cfe89.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/2.png" +dest_files=["res://.godot/imported/2.png-f9a3c55cc135f2ff17bebc9a920cfe89.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/asset/art/animation/c01_小小蝶_背面蹲下/3.png b/asset/art/animation/c01_小小蝶_背面蹲下/3.png new file mode 100755 index 00000000..9c5de5b7 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/3.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/3.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/3.png.import new file mode 100644 index 00000000..e7a3e272 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c8g2wj6ydbs1m" +path="res://.godot/imported/3.png-1a121101bc7298d281b1b779392f4d9d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/3.png" +dest_files=["res://.godot/imported/3.png-1a121101bc7298d281b1b779392f4d9d.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/asset/art/animation/c01_小小蝶_背面蹲下/4.png b/asset/art/animation/c01_小小蝶_背面蹲下/4.png new file mode 100755 index 00000000..ecfee449 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/4.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/4.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/4.png.import new file mode 100644 index 00000000..b3da08de --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://nksmho8vpfpm" +path="res://.godot/imported/4.png-81827c9f5008ce559785c463e33cf9de.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/4.png" +dest_files=["res://.godot/imported/4.png-81827c9f5008ce559785c463e33cf9de.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/asset/art/animation/c01_小小蝶_背面蹲下/5.png b/asset/art/animation/c01_小小蝶_背面蹲下/5.png new file mode 100755 index 00000000..ab5704b9 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/5.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/5.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/5.png.import new file mode 100644 index 00000000..b5ae5e04 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/5.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://x0r6f4ji6haj" +path="res://.godot/imported/5.png-7445a9543c9bc45739455f267c1134c8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/5.png" +dest_files=["res://.godot/imported/5.png-7445a9543c9bc45739455f267c1134c8.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/asset/art/animation/c01_小小蝶_背面蹲下/6.png b/asset/art/animation/c01_小小蝶_背面蹲下/6.png new file mode 100755 index 00000000..e4897b3c Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/6.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/6.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/6.png.import new file mode 100644 index 00000000..ba1a55b0 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://coomdeo2c4fyg" +path="res://.godot/imported/6.png-ad67fbe9c31da2fd77ad561a89b389a1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/6.png" +dest_files=["res://.godot/imported/6.png-ad67fbe9c31da2fd77ad561a89b389a1.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/asset/art/animation/c01_小小蝶_背面蹲下/7.png b/asset/art/animation/c01_小小蝶_背面蹲下/7.png new file mode 100755 index 00000000..ab5704b9 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/7.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/7.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/7.png.import new file mode 100644 index 00000000..711d06ab --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/7.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://s6xrmay5c75i" +path="res://.godot/imported/7.png-f0e531bf40e0c53cb05162e3ef64b3fb.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/7.png" +dest_files=["res://.godot/imported/7.png-f0e531bf40e0c53cb05162e3ef64b3fb.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/asset/art/animation/c01_小小蝶_背面蹲下/8.png b/asset/art/animation/c01_小小蝶_背面蹲下/8.png new file mode 100755 index 00000000..9c5de5b7 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/8.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/8.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/8.png.import new file mode 100644 index 00000000..4efbd9a9 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/8.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bob8nhp48r53x" +path="res://.godot/imported/8.png-74b840b6015828096fbf6895fde0fe1c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/8.png" +dest_files=["res://.godot/imported/8.png-74b840b6015828096fbf6895fde0fe1c.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/asset/art/animation/c01_小小蝶_背面蹲下/9.png b/asset/art/animation/c01_小小蝶_背面蹲下/9.png new file mode 100755 index 00000000..87f74313 Binary files /dev/null and b/asset/art/animation/c01_小小蝶_背面蹲下/9.png differ diff --git a/asset/art/animation/c01_小小蝶_背面蹲下/9.png.import b/asset/art/animation/c01_小小蝶_背面蹲下/9.png.import new file mode 100644 index 00000000..97727f15 --- /dev/null +++ b/asset/art/animation/c01_小小蝶_背面蹲下/9.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b3fkbh3l5scm7" +path="res://.godot/imported/9.png-af0fdb81c713853115b03f2896a4ce06.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/animation/c01_小小蝶_背面蹲下/9.png" +dest_files=["res://.godot/imported/9.png-af0fdb81c713853115b03f2896a4ce06.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/asset/art/fog_mask.png b/asset/art/fog_mask.png index 62a0bea5..06a320ac 100644 Binary files a/asset/art/fog_mask.png and b/asset/art/fog_mask.png differ diff --git a/asset/art/tool/fog_mask_generator.tscn b/asset/art/tool/fog_mask_generator.tscn index 42e5539f..71917c9e 100644 --- a/asset/art/tool/fog_mask_generator.tscn +++ b/asset/art/tool/fog_mask_generator.tscn @@ -7,6 +7,6 @@ position = Vector2(294, 145) scale = Vector2(0.2, 0.2) script = ExtResource("1_48e0h") export_path = "res://asset/art/fog_mask.png" -l_ease_in_x = 600.0 -mid = 700.0 -r_ease_out_x = 600.0 +l_ease_in_x = 450.0 +mid = 570.0 +r_ease_out_x = 450.0 diff --git a/asset/dialogue/c01.dialogue b/asset/dialogue/c01.dialogue index 6a30601c..200bb8d0 100644 --- a/asset/dialogue/c01.dialogue +++ b/asset/dialogue/c01.dialogue @@ -19,18 +19,21 @@ #“在这儿吗......” [ID:c01_在这儿吗] #=> END -#~ c01_s05_院长房间_开场 -#吕萍: (念诵夜行船——)[#wait=4] [ID:c01_s05_夜行船1] -#吕萍: (疑惑——)[ID:c01_s05_夜行船2] -#=> END +~ c01_s05_院长房间_开场 +???: ...后面看不清了。 +=> END ~ c01_s06_走廊前对话 老师: 昨天认的字,现在全忘了? [ID:c01_s06_走廊前对话1] 老师: (唉呀)黄鱼脑子! [ID:c01_s06_走廊前对话2] => END -~ c01_s06_对话1 -# 猫鼠游戏前,与跟班1的对话 +~ c01_s06_四个小孩画鬼差的对话 +胖小孩: 画完了没有?你小子咋比秤砣还沉! +残疾小孩: 快了、快了。 +跟班甲: 这是个啥?黑乎乎的,旁边还有两朵花。 +残疾小孩: 非也,非也。谁规定神仙不能长成这样的? +胖小孩: 呸,神仙要是真长得这么丑,老子以后都倒立撒尿! 跟班乙: 嘶,总觉得好像在哪见过…… 跟班甲: 这画是六指儿画的,你问他去! 残疾小孩: 我知道什么?知道也不能告诉你! @@ -39,20 +42,6 @@ 跟班乙: 搞得大家都不去墙根底下玩儿了,真晦气。 => END -#~ c01_s06_对话2 -## 猫鼠游戏前,与跟班2(同乡)的对话 -#小孩乙: (台词设计)老乡啊... [ID:c01_s06_对话2_1] -#=> END - -~ c01_s06_对话3 -# 猫鼠游戏前,与胖子的对话 -胖小孩: 画完了没有?你小子咋比秤砣还沉! [ID:c01_s06_对话3_1] -残疾小孩: 快了、快了。 [ID:c01_s06_对话3_2] -跟班甲: 这是个啥?黑乎乎的,旁边还有两朵花。 -残疾小孩: 非也,非也。谁规定神仙不能长成这样的? -胖小孩: 呸,神仙要是真长得这么丑,老子以后都倒立撒尿! -=> END - ~ c01_s06_谈论鬼差与猫鼠游戏 胖小孩: 站住! [ID:c01_s06_谈论鬼差1] 胖小孩: 我们可没让你走! [ID:c01_s06_谈论鬼差2] diff --git a/asset/dialogue/item_description.csv b/asset/dialogue/item_description.csv index a0a26f45..3cbba3c1 100644 --- a/asset/dialogue/item_description.csv +++ b/asset/dialogue/item_description.csv @@ -57,7 +57,7 @@ prop_银元_说明,一枚“袁大头”银元,中華民國十年造。,,, 重要物品示例,重要物品示例,,, 4,4,,, c01_s05_检查院长房间,好像忘记了什么事情,再回去检查一遍吧。,,, -c01_s07_需要报纸,我想先在周围看看,,, +c01_s07_需要报纸,书店还没开门。,,, c01_s08_书店工作,老板交代的工作还没做完,不能偷懒。,,, c01_s08_书店工钱,这个月的工钱还没拿。,,, notes_纸条,纸条,,, @@ -81,6 +81,8 @@ c01_倾斜的洋相片,"哇啊,这张洋相片要掉下来了! c01_摆正的洋相片,这是院长的儿子吗?,,, c01_s06_院长房间,这是院长的房间,,, c01_s06_小朋友房间,这是其他小朋友的房间,,, +c01_s06_熟悉的墙画,"墙上的画看起来好熟悉。 +过去问问看吧,没准他们几个知道些什么。",,, c01_s07_钱碗,碗里只有一枚铜钱。,,, c01_s07_获得报纸,这是什么?,,, c01_s07_书店展柜,"院长说,读一百本书,就可以成为无所不能的大人。 diff --git a/asset/dialogue/item_description.dialogue b/asset/dialogue/item_description.dialogue index 55e74316..567c97da 100644 --- a/asset/dialogue/item_description.dialogue +++ b/asset/dialogue/item_description.dialogue @@ -93,7 +93,7 @@ ~ HoldingReason 好像忘记了什么事情,再回去检查一遍吧。 [ID:c01_s05_检查院长房间] -我想先在周围看看 [ID:c01_s07_需要报纸] +书店还没开门。 [ID:c01_s07_需要报纸] 老板交代的工作还没做完,不能偷懒。 [ID:c01_s08_书店工作] 这个月的工钱还没拿。 [ID:c01_s08_书店工钱] => END @@ -119,6 +119,8 @@ # c01-s06 院子 这是院长的房间 [ID:c01_s06_院长房间] 这是其他小朋友的房间 [ID:c01_s06_小朋友房间] +# 院子里四个小孩交谈结束后 +墙上的画看起来好熟悉。\n过去问问看吧,没准他们几个知道些什么。 [ID:c01_s06_熟悉的墙画] # c01-s07 书店外 碗里只有一枚铜钱。 [ID:c01_s07_钱碗] 这是什么? [ID:c01_s07_获得报纸] diff --git a/config/animation/entity_sprite_frames.tres b/config/animation/entity_sprite_frames.tres index 0bdc0a40..b95e9a46 100644 --- a/config/animation/entity_sprite_frames.tres +++ b/config/animation/entity_sprite_frames.tres @@ -1,4 +1,4 @@ -[gd_resource type="SpriteFrames" load_steps=643 format=3 uid="uid://b7fhheih1hbvf"] +[gd_resource type="SpriteFrames" load_steps=657 format=3 uid="uid://b7fhheih1hbvf"] [ext_resource type="Texture2D" uid="uid://bpqrd6vo3j17m" path="res://asset/art/animation/c00_吕萍_记笔记_right/吕萍-拿本子记录1.png" id="1_6sdvl"] [ext_resource type="Texture2D" uid="uid://dvq64espa37lx" path="res://asset/art/animation/c00_吕萍_idle_left/zhhx1.png" id="1_ekv0l"] @@ -582,19 +582,33 @@ [ext_resource type="Texture2D" uid="uid://ckjmxl5s6ahnf" path="res://asset/art/animation/c02_父亲_walking/04.png" id="306_nwm8y"] [ext_resource type="Texture2D" uid="uid://fsr50578o8o5" path="res://asset/art/animation/c02_父亲_walking/05.png" id="307_w72k7"] [ext_resource type="Texture2D" uid="uid://bxm6d7a7fonwg" path="res://asset/art/animation/c02_父亲_walking/06.png" id="308_wvflb"] +[ext_resource type="Texture2D" uid="uid://qidgsi8po28g" path="res://asset/art/animation/c01_小小蝶_背面抬头/1.png" id="309_iimum"] [ext_resource type="Texture2D" uid="uid://bm3wfydsh5sy" path="res://asset/art/animation/c02_父亲_walking/07.png" id="309_tddmd"] [ext_resource type="Texture2D" uid="uid://dh71vjomp5ph7" path="res://asset/art/animation/c02_父亲_walking/08.png" id="310_5fimm"] +[ext_resource type="Texture2D" uid="uid://c2qo5n5kdbb1i" path="res://asset/art/animation/c01_小小蝶_背面抬头/2.png" id="310_u2jno"] +[ext_resource type="Texture2D" uid="uid://b17hualhwripu" path="res://asset/art/animation/c01_小小蝶_背面抬头/3.png" id="311_13qfd"] [ext_resource type="Texture2D" uid="uid://xu7bvnpxu4f5" path="res://asset/art/animation/c02_父亲_walking/09.png" id="311_p2jtk"] +[ext_resource type="Texture2D" uid="uid://kl8hklflrruw" path="res://asset/art/animation/c01_小小蝶_背面抬头/4.png" id="312_a0f2d"] [ext_resource type="Texture2D" uid="uid://c4qcsycjrubxr" path="res://asset/art/animation/c02_父亲_walking/10.png" id="312_g3qi2"] [ext_resource type="Texture2D" uid="uid://cjwvnc6v1esls" path="res://asset/art/animation/c02_父亲_walking/11.png" id="313_3u68t"] +[ext_resource type="Texture2D" uid="uid://dd01nj0cxeq4s" path="res://asset/art/animation/c01_小小蝶_背面蹲下/1.png" id="313_ypwpj"] +[ext_resource type="Texture2D" uid="uid://dvdbsejs4l2vk" path="res://asset/art/animation/c01_小小蝶_背面蹲下/2.png" id="314_3qf2e"] [ext_resource type="Texture2D" uid="uid://c0u51u2xfr65v" path="res://asset/art/animation/c02_父亲_walking/12.png" id="314_tn4yb"] [ext_resource type="Texture2D" uid="uid://bnn5fhy2b0eij" path="res://asset/art/animation/c02_父亲_walking/13.png" id="315_co38u"] +[ext_resource type="Texture2D" uid="uid://c8g2wj6ydbs1m" path="res://asset/art/animation/c01_小小蝶_背面蹲下/3.png" id="315_ktwt1"] +[ext_resource type="Texture2D" uid="uid://nksmho8vpfpm" path="res://asset/art/animation/c01_小小蝶_背面蹲下/4.png" id="316_2v3u4"] [ext_resource type="Texture2D" uid="uid://ocsxgjimkgru" path="res://asset/art/animation/c02_父亲_walking/14.png" id="316_qt3wx"] +[ext_resource type="Texture2D" uid="uid://x0r6f4ji6haj" path="res://asset/art/animation/c01_小小蝶_背面蹲下/5.png" id="317_dlydb"] [ext_resource type="Texture2D" uid="uid://dtqalpxr53rf3" path="res://asset/art/animation/c02_父亲_walking/15.png" id="317_lqbts"] [ext_resource type="Texture2D" uid="uid://d0pmkf2lnvwoi" path="res://asset/art/animation/c02_父亲_walking/16.png" id="318_vvse2"] +[ext_resource type="Texture2D" uid="uid://coomdeo2c4fyg" path="res://asset/art/animation/c01_小小蝶_背面蹲下/6.png" id="318_xewty"] [ext_resource type="Texture2D" uid="uid://6w86kjr1lqs8" path="res://asset/art/animation/c02_父亲_walking/17.png" id="319_aforw"] +[ext_resource type="Texture2D" uid="uid://s6xrmay5c75i" path="res://asset/art/animation/c01_小小蝶_背面蹲下/7.png" id="319_yjsfv"] +[ext_resource type="Texture2D" uid="uid://bob8nhp48r53x" path="res://asset/art/animation/c01_小小蝶_背面蹲下/8.png" id="320_253oi"] [ext_resource type="Texture2D" uid="uid://dh8mu7and5r21" path="res://asset/art/animation/c02_父亲_walking/18.png" id="320_lu3p0"] [ext_resource type="Texture2D" uid="uid://cp6jsnas2a3n1" path="res://asset/art/animation/c02_父亲_桌前说话/2.png" id="321_eqfeu"] +[ext_resource type="Texture2D" uid="uid://b3fkbh3l5scm7" path="res://asset/art/animation/c01_小小蝶_背面蹲下/9.png" id="321_mlkjm"] +[ext_resource type="Texture2D" uid="uid://bw8icdmlelyaa" path="res://asset/art/animation/c01_小小蝶_背面蹲下/10.png" id="322_nsui4"] [ext_resource type="Texture2D" uid="uid://d1f3p5hd4ip0h" path="res://asset/art/animation/c02_父亲_桌前说话/3.png" id="322_o1dfe"] [ext_resource type="Texture2D" uid="uid://bcdx7wpeth3kr" path="res://asset/art/animation/c02_父亲_桌前说话/4.png" id="323_jffdy"] [ext_resource type="Texture2D" uid="uid://vs3thiqsv4i0" path="res://asset/art/animation/c02_父亲_桌前说话/6.png" id="324_u6al6"] @@ -1721,6 +1735,58 @@ animations = [{ }, { "frames": [{ "duration": 1.0, +"texture": ExtResource("309_iimum") +}, { +"duration": 1.0, +"texture": ExtResource("310_u2jno") +}, { +"duration": 1.0, +"texture": ExtResource("311_13qfd") +}, { +"duration": 1.0, +"texture": ExtResource("312_a0f2d") +}], +"loop": true, +"name": &"c01_小小蝶_背面抬头", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("313_ypwpj") +}, { +"duration": 1.0, +"texture": ExtResource("314_3qf2e") +}, { +"duration": 1.0, +"texture": ExtResource("315_ktwt1") +}, { +"duration": 1.0, +"texture": ExtResource("316_2v3u4") +}, { +"duration": 1.0, +"texture": ExtResource("317_dlydb") +}, { +"duration": 1.0, +"texture": ExtResource("318_xewty") +}, { +"duration": 1.0, +"texture": ExtResource("319_yjsfv") +}, { +"duration": 1.0, +"texture": ExtResource("320_253oi") +}, { +"duration": 1.0, +"texture": ExtResource("321_mlkjm") +}, { +"duration": 1.0, +"texture": ExtResource("322_nsui4") +}], +"loop": true, +"name": &"c01_小小蝶_背面蹲下", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, "texture": ExtResource("55_vb76q") }, { "duration": 1.0, diff --git a/manager/config_manager/global_config.gd b/manager/config_manager/global_config.gd index 1e4e77aa..687564b8 100644 --- a/manager/config_manager/global_config.gd +++ b/manager/config_manager/global_config.gd @@ -8,11 +8,11 @@ const RES_FILE_FORMAT = ".tres" ## layers const CANVAS_LAYER_SETTINGS = 30 -const CANVAS_LAYER_DIALOG = 23 +const CANVAS_LAYER_BAG = 25 const CANVAS_LAYER_UI = 22 const CANVAS_LAYER_PROP_INSPECTOR = 21 -const CANVAS_LAYER_BAG = 12 -const CANVAS_LAYER_GROUND_MASK = 11 +const CANVAS_LAYER_GROUND_MASK = 14 +const CANVAS_LAYER_DIALOG = 12 const CANVAS_LAYER_SHADING = 10 const CANVAS_LAYER_LITTLE_GAME = 5 const CANVAS_LAYER_FG = 2 diff --git a/scene/dialog/balloon.gd b/scene/dialog/balloon.gd index b00c2529..c2ccdd59 100755 --- a/scene/dialog/balloon.gd +++ b/scene/dialog/balloon.gd @@ -64,6 +64,7 @@ var mutation_cooldown: Timer = Timer.new() func _ready() -> void: + layer = GlobalConfig.CANVAS_LAYER_DIALOG balloon.hide() Engine.get_singleton("DialogueManager").mutated.connect(_on_mutated) diff --git a/scene/dialog/balloon.tscn b/scene/dialog/balloon.tscn index 06a8c5c0..ec34207f 100644 --- a/scene/dialog/balloon.tscn +++ b/scene/dialog/balloon.tscn @@ -57,7 +57,7 @@ MarginContainer/constants/margin_top = 15 Panel/styles/panel = SubResource("StyleBoxEmpty_jydvi") [node name="Balloon" type="CanvasLayer"] -layer = 23 +layer = 12 script = ExtResource("1_36de5") metadata/_edit_vertical_guides_ = [-78.0] metadata/_edit_horizontal_guides_ = [276.0] @@ -133,7 +133,8 @@ theme_override_constants/shadow_offset_x = 1 theme_override_font_sizes/normal_font_size = 9 text = "Dialogue..." autowrap_mode = 0 -seconds_per_step = 0.06 +seconds_per_step = 0.005 +seconds_per_pause_step = 0.1 [node name="Responses" type="MarginContainer" parent="Balloon"] layout_mode = 1 diff --git a/scene/dialog/balloon_debug.tscn b/scene/dialog/balloon_debug.tscn index 508d9919..713b2f61 100644 --- a/scene/dialog/balloon_debug.tscn +++ b/scene/dialog/balloon_debug.tscn @@ -56,7 +56,7 @@ MarginContainer/constants/margin_top = 15 Panel/styles/panel = SubResource("StyleBoxEmpty_jydvi") [node name="Balloon" type="CanvasLayer"] -layer = 100 +layer = 12 script = ExtResource("1_jfh0c") metadata/_edit_vertical_guides_ = [-78.0] metadata/_edit_horizontal_guides_ = [276.0] diff --git a/scene/entity/note.gd b/scene/entity/note.gd index 70737a32..87e27892 100644 --- a/scene/entity/note.gd +++ b/scene/entity/note.gd @@ -8,7 +8,7 @@ signal read_note enabled = val if is_node_ready(): sign_mark.enabled = val -@export var action := 3 #3为none; 4为lookup_wall; 之后为其他动作,请参考 PlayerAnimationConfig +@export var action := 4 #3为none; 4为lookup_wall; 之后为其他动作,请参考 PlayerAnimationConfig @export_enum("os", "ballon") var mode = "os" @export_enum("items", "c01", "c02", "c03", "c04", "c05") var dialogue := "items": set(val): @@ -86,7 +86,16 @@ func _on_interacted() -> void: func _show_os(res, title): var lines = await DialogueUtil.get_lines(res, title) SceneManager.pop_os(lines) - SceneManager.freeze_player(1.0, action) + interacting = true + var player = SceneManager.get_player() + if player: + player.freeze_player(0.0, action, false) + player.os_finished.connect(_on_os_finished, CONNECT_ONE_SHOT) + + +func _on_os_finished(): + interacting = false + SceneManager.release_player() func _show_balloon(res, title): diff --git a/scene/entity/partical/particals_ash_vertical.tscn b/scene/entity/partical/particals_ash_vertical.tscn index 0e998fae..a378184a 100644 --- a/scene/entity/partical/particals_ash_vertical.tscn +++ b/scene/entity/partical/particals_ash_vertical.tscn @@ -23,23 +23,22 @@ emission_shape = 3 emission_box_extents = Vector3(300, 20, 0) angle_min = -300.0 angle_max = 300.0 -direction = Vector3(0, 50, 0) +direction = Vector3(-20, 70, 0) spread = 30.0 -initial_velocity_min = 5.0 -initial_velocity_max = 15.0 +initial_velocity_min = 10.0 +initial_velocity_max = 35.0 gravity = Vector3(0, 0, 0) -scale_min = 0.1 -scale_max = 0.5 +scale_min = 0.5 scale_curve = SubResource("CurveTexture_jq14j") color_ramp = SubResource("GradientTexture1D_5cty7") [node name="ParticalsAsh" type="Node2D"] [node name="纸钱" type="GPUParticles2D" parent="."] -amount = 200 -process_material = SubResource("ParticleProcessMaterial_wa8gc") +amount = 300 texture = ExtResource("1_hsa64") -lifetime = 50.0 +lifetime = 30.0 preprocess = 20.0 visibility_rect = Rect2(-750, 0, 1500, 600) +process_material = SubResource("ParticleProcessMaterial_wa8gc") metadata/_edit_vertical_guides_ = [-721.0] diff --git a/scene/ground/camera/camera_focus_marker.gd b/scene/ground/camera/camera_focus_marker.gd index 3b31e493..21e5f504 100644 --- a/scene/ground/camera/camera_focus_marker.gd +++ b/scene/ground/camera/camera_focus_marker.gd @@ -35,7 +35,7 @@ func _enter_tree() -> void: if is_node_ready(): reset_position_immediately() -func shake_camera(strength := 15.0): +func shake_camera(strength := 7.0): shake_strength = strength func reset_position_immediately(): diff --git a/scene/ground/scene/c01/s05_animation.gd b/scene/ground/scene/c01/s05_animation.gd index 69daddef..22b21818 100644 --- a/scene/ground/scene/c01/s05_animation.gd +++ b/scene/ground/scene/c01/s05_animation.gd @@ -72,9 +72,12 @@ func _on_ground_ready() -> void: piano.interacted.connect(_on_piano_interacted) func _on_bed_reading_frame_changed(): - if bed_reading.animation == "c01_小小蝶_床上看书" and bed_reading.frame == 10: - # 播放结束,0.5s 后释放角色 - get_tree().create_timer(0.5).timeout.connect(SceneManager.release_player) + if bed_reading.animation == "c01_小小蝶_床上看书": + if bed_reading.frame == 5: + DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s05_院长房间_开场") + elif bed_reading.frame == 10: + # 播放结束,0.5s 后释放角色 + get_tree().create_timer(0.5).timeout.connect(SceneManager.release_player) func _on_note_read(): diff --git a/scene/ground/scene/c01/s05_院长房间.tscn b/scene/ground/scene/c01/s05_院长房间.tscn index b68edb26..d3ca41c1 100644 --- a/scene/ground/scene/c01/s05_院长房间.tscn +++ b/scene/ground/scene/c01/s05_院长房间.tscn @@ -462,7 +462,7 @@ tracks/8/path = NodePath("CameraFocusMarker:zoom_ratio") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"times": PackedFloat32Array(0, 0.84, 3.18, 4.1), +"times": PackedFloat32Array(0, 1.22, 3.1, 4.1), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [1.0, 1.3, 1.3, 1.0] diff --git a/scene/ground/scene/c01/s06_animation.gd b/scene/ground/scene/c01/s06_animation.gd index 15e14a11..ff5d8183 100644 --- a/scene/ground/scene/c01/s06_animation.gd +++ b/scene/ground/scene/c01/s06_animation.gd @@ -76,11 +76,31 @@ func _dean_flip_book() -> void: dean.play("院长翻书") +# 在游戏开始前,更早的对话 +func pre_game_intro(): + SceneManager.freeze_player(0) + DialogueManager.dialogue_ended.connect(_on_pre_game_intro_finished, CONNECT_ONE_SHOT) + var camera = SceneManager.get_camera_marker() as CameraFocusMarker + camera.tween_zoom(1.5, 3.0) + var p = $"../DeployLayer/四小孩画鬼差的对话ambush/FocusPoint" + camera.focus_node(p, 3.0) + await get_tree().create_timer(1.5).timeout + DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s06_四个小孩画鬼差的对话") + + +func _on_pre_game_intro_finished(_res): + # 重置镜头 + SceneManager.focus_player_and_reset_zoom(2.5) + await get_tree().create_timer(1.5).timeout + var lines = await DialogueUtil.generate_lines(tr("c01_s06_熟悉的墙画")) + var player = SceneManager.get_player() as MainPlayer + player.pop_os(lines) + player.os_finished.connect(pre_game_os_finished, CONNECT_ONE_SHOT) + +func pre_game_os_finished(): + SceneManager.release_player() + func game_intro() -> void: - # 游戏开始后,禁用npc对话 - standing_kid1.get_node("对话1").enabled = false - standing_kid2.get_node("对话2").enabled = false - game_kid.get_node("对话3").enabled = false # 禁用猫鼠游戏开始 ambush 检测 cat_rat_game_start_ambush.enabled = false var camera = SceneManager.get_camera_marker() as CameraFocusMarker @@ -116,8 +136,10 @@ func _game_counting_down(_res = null): cat.visible = true cat.play("【墙上黑猫】跑步") + var kid_run_tween + func _kids_start_run(): standing_kid1.get_node("猫鼠游戏重置ambush").enabled = true if kid_run_tween: diff --git a/scene/ground/scene/c01/s06_孤儿院长廊围墙.tscn b/scene/ground/scene/c01/s06_孤儿院长廊围墙.tscn index d13a658f..b7df653f 100644 --- a/scene/ground/scene/c01/s06_孤儿院长廊围墙.tscn +++ b/scene/ground/scene/c01/s06_孤儿院长廊围墙.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=35 format=3 uid="uid://bx16c8nn32f40"] +[gd_scene load_steps=34 format=3 uid="uid://bx16c8nn32f40"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_bitx7"] [ext_resource type="Script" uid="uid://don6fobmq0h6x" path="res://scene/ground/scene/c01/s06_animation.gd" id="2_fkfhi"] @@ -79,10 +79,6 @@ size = Vector2(10, 70) resource_local_to_scene = true size = Vector2(30, 70) -[sub_resource type="RectangleShape2D" id="RectangleShape2D_ga8xr"] -resource_local_to_scene = true -size = Vector2(20, 60) - [sub_resource type="FastNoiseLite" id="FastNoiseLite_jw18h"] noise_type = 2 fractal_type = 2 @@ -154,6 +150,7 @@ target_scene = "c01_s07" visible = false position = Vector2(575, 9) enabled = false +action = 3 title_filter = "c01" note_key = "c01_s06_院长房间" @@ -161,12 +158,14 @@ note_key = "c01_s06_院长房间" visible = false position = Vector2(998, 2) enabled = false +action = 3 title_filter = "c01" note_key = "c01_s06_小朋友房间" [node name="门口对话ambush" parent="Ground/DeployLayer" index="4" instance=ExtResource("11_tudob")] position = Vector2(295, 43) freeze_time = 1.0 +lock_player_on_playing_dialogue = false hook_dialogue_title = "c01_s06_走廊前对话" [node name="门口ambush" parent="Ground/DeployLayer" index="5" instance=ExtResource("11_tudob")] @@ -196,7 +195,15 @@ position = Vector2(1358, 0) sprite_frames = ExtResource("2_l4axy") animation = &"跷跷板" -[node name="drawing_kids" type="Node2D" parent="Ground/DeployLayer" index="9"] +[node name="四小孩画鬼差的对话ambush" parent="Ground/DeployLayer" index="9" instance=ExtResource("11_tudob")] +position = Vector2(1413, 66) +freeze_time = 1.0 +hook_method = "pre_game_intro" + +[node name="FocusPoint" type="Node2D" parent="Ground/DeployLayer/四小孩画鬼差的对话ambush"] +position = Vector2(212, -35) + +[node name="drawing_kids" type="Node2D" parent="Ground/DeployLayer" index="10"] position = Vector2(1593, 44) [node name="【画画小女孩】" parent="Ground/DeployLayer/drawing_kids" instance=ExtResource("8_ouldg")] @@ -231,7 +238,7 @@ action_configs = Array[Dictionary]([{ "intro_loop": 2 }]) -[node name="游戏中途桌椅" parent="Ground/DeployLayer" index="10" instance=ExtResource("8_ouldg")] +[node name="游戏中途桌椅" parent="Ground/DeployLayer" index="11" instance=ExtResource("8_ouldg")] position = Vector2(2838.5, 0.5) sprite_frames = ExtResource("7_dsj2r") animation = &"桌椅正常" @@ -260,7 +267,7 @@ position = Vector2(7, 48) shape = SubResource("RectangleShape2D_1ojoa") debug_color = Color(0.519778, 0.447036, 0.929413, 0.42) -[node name="Interactable桌椅" parent="Ground/DeployLayer" index="11" instance=ExtResource("12_idjp0")] +[node name="Interactable桌椅" parent="Ground/DeployLayer" index="12" instance=ExtResource("12_idjp0")] position = Vector2(2740.5, 50.5) one_shot = false @@ -270,7 +277,7 @@ metadata/_edit_use_anchors_ = true [node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable桌椅/Area2D" index="0"] shape = SubResource("RectangleShape2D_73xsu") -[node name="【站立小孩-3】" parent="Ground/DeployLayer" index="12" instance=ExtResource("8_ouldg")] +[node name="【站立小孩-3】" parent="Ground/DeployLayer" index="13" instance=ExtResource("8_ouldg")] position = Vector2(1558, -12) sprite_frames = ExtResource("7_dsj2r") animation = &"【站立小孩-3】呼吸" @@ -288,7 +295,7 @@ move_configs = Array[Dictionary]([{ "velocity": Vector2(35, 0) }]) -[node name="【站立小孩-1】" parent="Ground/DeployLayer" index="13" instance=ExtResource("8_ouldg")] +[node name="【站立小孩-1】" parent="Ground/DeployLayer" index="14" instance=ExtResource("8_ouldg")] position = Vector2(1533, -5) sprite_frames = ExtResource("7_dsj2r") animation = &"【站立小孩-1】侧面呼吸" @@ -306,7 +313,7 @@ move_configs = Array[Dictionary]([{ "velocity": Vector2(38, 0) }, { "animation": &"【站立小孩-1】侧面跑步", -"velocity": Vector2(120, 0) +"velocity": Vector2(115, 0) }]) [node name="桌椅ambush1" parent="Ground/DeployLayer/【站立小孩-1】" instance=ExtResource("11_tudob")] @@ -333,17 +340,7 @@ enabled = false [node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-1】/猫鼠游戏重置ambush/Area2D" index="0"] shape = SubResource("RectangleShape2D_7cdhx") -[node name="对话1" parent="Ground/DeployLayer/【站立小孩-1】" instance=ExtResource("12_28t76")] -position = Vector2(0, 53) -mode = "ballon" -dialogue = "c01" -title_filter = "c01" -note_key = "c01_s06_对话1" - -[node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-1】/对话1/Area2D" index="0"] -shape = SubResource("RectangleShape2D_ga8xr") - -[node name="【站立小孩-2】" parent="Ground/DeployLayer" index="14" instance=ExtResource("8_ouldg")] +[node name="【站立小孩-2】" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_ouldg")] z_index = 10 position = Vector2(1505, 19) sprite_frames = ExtResource("7_dsj2r") @@ -363,7 +360,7 @@ move_configs = Array[Dictionary]([{ "velocity": Vector2(33, 0) }, { "animation": &"【站立小孩-2】侧面跑步", -"velocity": Vector2(95, 0) +"velocity": Vector2(110, 0) }]) [node name="FocusPoint" type="Node2D" parent="Ground/DeployLayer/【站立小孩-2】"] @@ -381,15 +378,7 @@ collision_mask = 64 [node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-2】/桌椅ambush2/Area2D" index="0"] shape = SubResource("RectangleShape2D_ceat6") -[node name="对话2" parent="Ground/DeployLayer/【站立小孩-2】" instance=ExtResource("12_28t76")] -position = Vector2(0, 42) -enabled = false -mode = "ballon" -dialogue = "c01" -title_filter = "c01" -note_key = "c01_s06_对话2" - -[node name="【墙上黑猫】" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_ouldg")] +[node name="【墙上黑猫】" parent="Ground/DeployLayer" index="16" instance=ExtResource("8_ouldg")] position = Vector2(1453, -14) scale = Vector2(0.8, 0.8) sprite_frames = ExtResource("7_dsj2r") @@ -401,13 +390,13 @@ move_configs = Array[Dictionary]([{ "velocity": Vector2(150, 0) }]) -[node name="猫鼠游戏开始ambush" parent="Ground/DeployLayer" index="16" instance=ExtResource("11_tudob")] +[node name="猫鼠游戏开始ambush" parent="Ground/DeployLayer" index="17" instance=ExtResource("11_tudob")] position = Vector2(1809, 56) one_shot = false freeze_time = 1.0 hook_method = "game_intro" -[node name="【胖小孩背着残疾小孩】" parent="Ground/DeployLayer" index="17" instance=ExtResource("8_ouldg")] +[node name="【胖小孩背着残疾小孩】" parent="Ground/DeployLayer" index="18" instance=ExtResource("8_ouldg")] z_index = 1 position = Vector2(1733, 5) sprite_frames = ExtResource("7_dsj2r") @@ -429,7 +418,7 @@ action_configs = Array[Dictionary]([{ }]) move_configs = Array[Dictionary]([{ "animation": "【胖小孩背着残疾小孩】奔跑", -"velocity": Vector2(90, 0) +"velocity": Vector2(106, 0) }]) [node name="桌椅ambush3" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】" instance=ExtResource("11_tudob")] @@ -450,6 +439,7 @@ z_as_relative = false position = Vector2(-23, 1) sprite_frames = ExtResource("7_dsj2r") animation = &"【单残疾小孩】爬行" +autoplay = "【单残疾小孩】爬行" autostart = false move_configs = Array[Dictionary]([{ "animation": &"【单残疾小孩】爬行", @@ -470,7 +460,7 @@ action_configs = Array[Dictionary]([{ "animation_next": "【墙上小孩猫影子】猫影跑步", "animation_wait_time": 1.0 }]) -light_energy = -0.2 +light_energy = -0.1 [node name="猫鼠游戏失败ambush" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】/【单残疾小孩】" instance=ExtResource("11_tudob")] position = Vector2(19, 49) @@ -483,14 +473,7 @@ enabled = false [node name="CollisionShape2D" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】/【单残疾小孩】/猫鼠游戏失败ambush/Area2D" index="0"] shape = SubResource("RectangleShape2D_7cdhx") -[node name="对话3" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】" instance=ExtResource("12_28t76")] -position = Vector2(0, 51) -mode = "ballon" -dialogue = "c01" -title_filter = "c01" -note_key = "c01_s06_对话3" - -[node name="猫鼠游戏胜利ambush" parent="Ground/DeployLayer" index="18" instance=ExtResource("11_tudob")] +[node name="猫鼠游戏胜利ambush" parent="Ground/DeployLayer" index="19" instance=ExtResource("11_tudob")] position = Vector2(4546, 45) one_shot = false freeze_time = 0.1 @@ -607,7 +590,6 @@ position = Vector2(0, -1) [editable path="Ground/DeployLayer/Interactable桌椅/Sign"] [editable path="Ground/DeployLayer/【站立小孩-1】/桌椅ambush1"] [editable path="Ground/DeployLayer/【站立小孩-1】/猫鼠游戏重置ambush"] -[editable path="Ground/DeployLayer/【站立小孩-1】/对话1"] [editable path="Ground/DeployLayer/【站立小孩-2】/桌椅ambush2"] [editable path="Ground/DeployLayer/【胖小孩背着残疾小孩】/桌椅ambush3"] [editable path="Ground/DeployLayer/【胖小孩背着残疾小孩】/【单残疾小孩】/猫鼠游戏失败ambush"] diff --git a/scene/ground/scene/c01/s08_animation.gd b/scene/ground/scene/c01/s08_animation.gd index 4415068f..3419ba76 100644 --- a/scene/ground/scene/c01/s08_animation.gd +++ b/scene/ground/scene/c01/s08_animation.gd @@ -100,7 +100,7 @@ func _on_dialogue_ended(_res) -> void: func assign_tasks() -> void: # 放报纸动作 - SceneManager.freeze_player(4.5, 8, true) + SceneManager.freeze_player(0, 8, false) await get_tree().create_timer(4.5).timeout DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s08_书店老板任务") DialogueManager.dialogue_ended.connect(_on_dialogue_ended, CONNECT_ONE_SHOT) diff --git a/scene/ground/scene/c01/s12_书店外_诡异版.tscn b/scene/ground/scene/c01/s12_书店外_诡异版.tscn index a52cd680..ea04998b 100644 --- a/scene/ground/scene/c01/s12_书店外_诡异版.tscn +++ b/scene/ground/scene/c01/s12_书店外_诡异版.tscn @@ -139,7 +139,7 @@ hook_method = "player_been_catched" [node name="飘动的寻人启事" parent="Ground/DeployLayer" index="6" instance=ExtResource("11_pwu7i")] z_index = 1 -position = Vector2(1027, -50) +position = Vector2(943, -51) [node name="陆仁舞刀" parent="Ground/DeployLayer" index="7" instance=ExtResource("14_ct084")] position = Vector2(1748, 10) @@ -235,28 +235,34 @@ ambient_light_energy = 0.6 ambient_light_color = Color(0.986481, 0.370829, 0.371193, 1) [node name="ParticalsAsh" parent="Ground/AmbientLayer" index="2" instance=ExtResource("6_mfjjt")] -position = Vector2(1990, -138) +position = Vector2(1721, -169) -[node name="PointLight2D花" type="PointLight2D" parent="Ground/AmbientLayer" index="3"] +[node name="ParticalsAsh2" parent="Ground/AmbientLayer" index="3" instance=ExtResource("6_mfjjt")] +position = Vector2(1163, -161) + +[node name="ParticalsAsh3" parent="Ground/AmbientLayer" index="4" instance=ExtResource("6_mfjjt")] +position = Vector2(2009, -139) + +[node name="PointLight2D花" type="PointLight2D" parent="Ground/AmbientLayer" index="5"] position = Vector2(317, 69) energy = 0.7 range_item_cull_mask = 2 texture = ExtResource("17_nta2f") -[node name="PointLight2D花2" type="PointLight2D" parent="Ground/AmbientLayer" index="4"] +[node name="PointLight2D花2" type="PointLight2D" parent="Ground/AmbientLayer" index="6"] position = Vector2(518, 69) energy = 0.7 range_item_cull_mask = 2 texture = ExtResource("17_nta2f") -[node name="PointLight2D花3" type="PointLight2D" parent="Ground/AmbientLayer" index="5"] +[node name="PointLight2D花3" type="PointLight2D" parent="Ground/AmbientLayer" index="7"] position = Vector2(1031, 48) color = Color(0.95127, 0.455775, 0.326473, 1) energy = 0.7 range_item_cull_mask = 2 texture = ExtResource("17_nta2f") -[node name="PointLight2D花4" type="PointLight2D" parent="Ground/AmbientLayer" index="6"] +[node name="PointLight2D花4" type="PointLight2D" parent="Ground/AmbientLayer" index="8"] position = Vector2(1232, 48) color = Color(0.95127, 0.455775, 0.326473, 1) energy = 0.7 diff --git a/scene/ground/script/c01/s12_飘动的寻人启事.gd b/scene/ground/script/c01/s12_飘动的寻人启事.gd index cbd98b58..939a6ee8 100644 --- a/scene/ground/script/c01/s12_飘动的寻人启事.gd +++ b/scene/ground/script/c01/s12_飘动的寻人启事.gd @@ -1,7 +1,7 @@ @tool extends Node2D -@export var velocity := 0.1 +@export var velocity := 0.15 @export var area_size := Vector2(500, 150): set(val): area_size = val @@ -31,7 +31,7 @@ func _draw() -> void: # 最多保持 4 个点; 先生成两个在左侧,再生成两个在右侧,然后再回到左侧,以此循环,形成左右摇摆的闭合路径 -var bezier_points = [Vector2(0, 0), Vector2(200, 30), Vector2(350, 60), Vector2(400, 80), Vector2(300, 90), Vector2(250, 120), Vector2(150, 150), Vector2(80, 150), Vector2(0, 150)] +var bezier_points = [Vector2(0, 0), Vector2(150, 20), Vector2(250, 40), Vector2(350, 60), Vector2(400, 80), Vector2(300, 100), Vector2(250, 120), Vector2(160, 130), Vector2(120, 140), Vector2(60, 150), Vector2(0, 150)] var current_position = Vector2.ZERO var weight := 0.0 diff --git a/scene/ground/script/c01/s12_飘动的寻人启事.tscn b/scene/ground/script/c01/s12_飘动的寻人启事.tscn index de1bfca1..1bab6b48 100644 --- a/scene/ground/script/c01/s12_飘动的寻人启事.tscn +++ b/scene/ground/script/c01/s12_飘动的寻人启事.tscn @@ -22,7 +22,7 @@ size = Vector2(20, 10) [node name="飘动的寻人启事" type="Node2D"] position = Vector2(43, 96) script = ExtResource("1_like6") -velocity = 0.4 +velocity = 0.5 [node name="Node2D" type="Node2D" parent="."] diff --git a/scene/little_game/书架/书架.gd b/scene/little_game/书架/书架.gd index 37a0425a..f7b42737 100644 --- a/scene/little_game/书架/书架.gd +++ b/scene/little_game/书架/书架.gd @@ -40,6 +40,7 @@ var gameover = false func _ready() -> void: + layer = GlobalConfig.CANVAS_LAYER_LITTLE_GAME # init answer first _init_answer_and_connect_signals() if Engine.is_editor_hint(): diff --git a/scene/little_game/书架/书架.tscn b/scene/little_game/书架/书架.tscn index c04eea49..efaf6825 100644 --- a/scene/little_game/书架/书架.tscn +++ b/scene/little_game/书架/书架.tscn @@ -187,6 +187,7 @@ atlas = ExtResource("6_pxxx5") region = Rect2(453, 459, 13, 97) [node name="书架" type="CanvasLayer"] +layer = 5 script = ExtResource("1_8af23") [node name="SfxInterchange" parent="." instance=ExtResource("3_03tyv")] diff --git a/scene/little_game/书架/生死簿.gd b/scene/little_game/书架/生死簿.gd index e913d301..1d5db218 100644 --- a/scene/little_game/书架/生死簿.gd +++ b/scene/little_game/书架/生死簿.gd @@ -29,7 +29,8 @@ var mode := 0: func _ready() -> void: - layer = GlobalConfig.CANVAS_LAYER_LITTLE_GAME + # 盖在书架上层,所以 +1 + layer = GlobalConfig.CANVAS_LAYER_LITTLE_GAME + 1 mode = 0 %ButtonPaperback.pressed.connect(_on_button_pressed.bind(1)) # 从右到左翻页,所以右侧-1,左侧+1 diff --git a/scene/little_game/书架/生死簿.tscn b/scene/little_game/书架/生死簿.tscn index 7e7963fb..017101cf 100644 --- a/scene/little_game/书架/生死簿.tscn +++ b/scene/little_game/书架/生死簿.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=42 format=3 uid="uid://bl5pohc77hi43"] +[gd_scene load_steps=45 format=3 uid="uid://bl5pohc77hi43"] [ext_resource type="Script" uid="uid://cyyku6caspu01" path="res://scene/little_game/书架/生死簿.gd" id="1_wipr2"] [ext_resource type="PackedScene" uid="uid://c85t6stvytvjn" path="res://scene/entity/general/sfx.tscn" id="3_17f8x"] @@ -16,6 +16,140 @@ [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_mii3t"] +[sub_resource type="Animation" id="Animation_40hbj"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("DirectionalLight2D:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 0.4655, 0.395153, 1)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("%页面/../Polygon2D:color") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 0)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("DirectionalLight2D2:color") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 0.341404, 0.271965, 1)] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("DirectionalLight2D2:energy") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} + +[sub_resource type="Animation" id="Animation_adstd"] +resource_name = "flash" +length = 0.6 +step = 0.01 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DirectionalLight2D:energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.14, 0.22, 0.27, 0.39, 0.48), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), +"update": 0, +"values": [0.0, 1.0, 0.5, 1.0, 0.5, 0.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("DirectionalLight2D:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 0.19, 0.38, 0.47), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 0, +"values": [Color(0.325954, 0.00240348, 3.62184e-06, 1), Color(1, 0.4655, 0.395153, 1), Color(0.373978, 0.00319589, 4.81308e-06, 1), Color(0.68393, 0.0117872, 1.79046e-05, 1)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("%页面/../Polygon2D:color") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0, 0.14, 0.42, 0.51), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(0.312466, 0.312466, 0.312466, 1), Color(0.712129, 0.712129, 0.712129, 1), Color(1, 1, 1, 0)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("DirectionalLight2D2:color") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0, 0.19, 0.3, 0.44), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 0, +"values": [Color(1, 0.873302, 0.851352, 1), Color(1, 0.341404, 0.271965, 1), Color(0.25098, 0.631373, 0.756863, 1), Color(1, 0.938654, 0.927912, 1)] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("DirectionalLight2D2:energy") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 0.18, 0.21, 0.27, 0.34, 0.38, 0.46, 0.52), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 0, +"values": [0.0, 1.0, 0.5, 10.0, 0.3, 3.0, 0.2, 0.0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_7rw5g"] +_data = { +&"RESET": SubResource("Animation_40hbj"), +&"flash": SubResource("Animation_adstd") +} + [sub_resource type="AtlasTexture" id="AtlasTexture_40hbj"] atlas = ExtResource("12_adstd") region = Rect2(213, 58, 36, 86) @@ -142,7 +276,7 @@ shader_parameter/tint_color = Color(1, 0.938631, 0.928082, 1) shader_parameter/tint_amount = 0.127 [node name="生死簿" type="CanvasLayer"] -layer = 11 +layer = 5 script = ExtResource("1_wipr2") [node name="SfxPage" parent="." instance=ExtResource("3_17f8x")] @@ -213,7 +347,7 @@ theme_override_styles/focus = SubResource("StyleBoxEmpty_mii3t") flat = true [node name="Polygon2D" type="Polygon2D" parent="Control"] -color = Color(0.592157, 0, 0.0156863, 0) +color = Color(1, 1, 1, 0) polygon = PackedVector2Array(-17, -13, 575, -11, 574, 324, -12, 322) [node name="封面" type="Sprite2D" parent="Control"] @@ -244,7 +378,11 @@ position = Vector2(309, 158) texture = ExtResource("7_hohup") offset = Vector2(-20, 0) script = ExtResource("4_dssaj") -area_size = Vector2(220, 150) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Control/页面/陆小蝶"] +libraries = { +&"": SubResource("AnimationLibrary_7rw5g") +} [node name="SfxStamp" parent="Control/页面/陆小蝶" instance=ExtResource("3_17f8x")] stream = ExtResource("4_jifnx") @@ -259,202 +397,171 @@ file = "出现.mp3" [node name="seals" type="Node2D" parent="Control/页面/陆小蝶"] [node name="seal1" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-65, -30) rotation = 0.589982 scale = Vector2(0.5, 0.5) texture = SubResource("AtlasTexture_40hbj") [node name="seal2" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-35, 2) rotation = 0.354212 scale = Vector2(0.5, 0.5) texture = SubResource("AtlasTexture_7rw5g") [node name="seal3" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-4, -13) rotation = -0.00212718 scale = Vector2(0.5, 0.5) texture = SubResource("AtlasTexture_p2wy3") [node name="seal4" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(47, -12) rotation = 0.495285 scale = Vector2(0.5, 0.5) texture = SubResource("AtlasTexture_i0uoq") [node name="seal5" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-92, -65) rotation = 1.5708 texture = SubResource("AtlasTexture_w7g70") [node name="seal6" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-62.7654, -65) rotation = 1.5708 texture = SubResource("AtlasTexture_iee7q") [node name="seal7" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-33.607, -65.4473) rotation = 1.52321 texture = SubResource("AtlasTexture_1txev") [node name="seal8" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-4.35236, -66) rotation = 1.5708 texture = SubResource("AtlasTexture_36qa7") [node name="seal9" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(24.7492, -66.9614) rotation = 1.52915 texture = SubResource("AtlasTexture_o5v72") [node name="seal10" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-48, -54) rotation = 3.66074 texture = SubResource("AtlasTexture_w66tj") [node name="seal11" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-59.4444, -35.4074) rotation = 3.78509 texture = SubResource("AtlasTexture_w3drj") [node name="seal12" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-74.4005, -19.4802) rotation = 3.97957 texture = SubResource("AtlasTexture_1spdb") [node name="seal13" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-48, -39) rotation = 1.75065 texture = SubResource("AtlasTexture_hqty3") [node name="seal14" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-22.9836, -28.8452) rotation = 2.17757 texture = SubResource("AtlasTexture_dnk2y") [node name="seal15" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-32.6797, -3.01064) rotation = 3.54012 texture = SubResource("AtlasTexture_xytdi") [node name="seal16" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-45.2371, 21.5391) rotation = 3.72067 texture = SubResource("AtlasTexture_wdtj8") [node name="seal17" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-61.2921, 43.6229) rotation = 3.8967 texture = SubResource("AtlasTexture_71e7e") [node name="seal18" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-82.7998, 60.1157) rotation = 4.27001 texture = SubResource("AtlasTexture_01jvt") [node name="seal19" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-68, -18) rotation = 2.70918 texture = SubResource("AtlasTexture_w66tj") [node name="seal20" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-63.4966, -8.24252) rotation = 2.70918 texture = SubResource("AtlasTexture_w3drj") [node name="seal21" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-58.2449, 0.632675) rotation = 2.55359 texture = SubResource("AtlasTexture_1spdb") [node name="seal22" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-52.1566, 9.04825) rotation = 2.40878 texture = SubResource("AtlasTexture_hqty3") [node name="seal23" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-2, -53) rotation = 3.19867 texture = SubResource("AtlasTexture_dnk2y") [node name="seal24" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-3.99252, -18.2165) rotation = 3.19867 texture = SubResource("AtlasTexture_xytdi") [node name="seal25" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(-4.03418, 16.4319) rotation = 3.14159 texture = SubResource("AtlasTexture_wdtj8") [node name="seal26" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(2.37357, 50.2137) rotation = 2.56729 texture = SubResource("AtlasTexture_71e7e") [node name="seal27" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(28.4496, 71.6259) rotation = 2.05168 texture = SubResource("AtlasTexture_01jvt") [node name="seal28" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(62.6506, 75.4119) rotation = 1.61838 texture = SubResource("AtlasTexture_dnk2y") [node name="seal29" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(77.2228, 75.1196) rotation = 1.41815 texture = SubResource("AtlasTexture_xytdi") [node name="seal30" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(56, -33) rotation = 3.58601 texture = SubResource("AtlasTexture_wdtj8") [node name="seal31" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(44.4149, -10.4801) rotation = 3.80853 texture = SubResource("AtlasTexture_71e7e") [node name="seal32" type="Sprite2D" parent="Control/页面/陆小蝶/seals"] -modulate = Color(0.710006, 0.41208, 0.953067, 1) position = Vector2(25.0474, 6.01167) rotation = 4.12819 texture = SubResource("AtlasTexture_01jvt") [node name="PathRoot" type="Node2D" parent="Control/页面/陆小蝶"] +visible = false position = Vector2(-309, -163) [node name="Path2D" type="Path2D" parent="Control/页面/陆小蝶/PathRoot"] diff --git a/scene/little_game/书架/陆小蝶名字.gd b/scene/little_game/书架/陆小蝶名字.gd index 6fc5e9e6..8cd28f11 100644 --- a/scene/little_game/书架/陆小蝶名字.gd +++ b/scene/little_game/书架/陆小蝶名字.gd @@ -3,28 +3,21 @@ extends Sprite2D signal finished -@export var area_size := Vector2(60, 60): - set(val): - area_size = val - queue_redraw() -@export var gizmo_outline_color := Color(0.8, 0.3, 0.1, 0.8): - set(val): - gizmo_outline_color = val - queue_redraw() @export_tool_button("Reset Stamps", "Callable") var reset_action := _debug_reset_stamps func play() -> void: visible = true var tween = create_tween() - tween.tween_interval(3.0) + tween.tween_interval(2.0) # var final_modulate = Color.PALE_VIOLET_RED tween.tween_property(self, "self_modulate:a", 0.0, 4.0) # tween.parallel().tween_property(get_parent(), "modulate", final_modulate, 12.0) tween = create_tween() - tween.tween_interval(7.0) + # 在小蝶名字消失的末尾(还没完全消失),开始盖章 + tween.tween_interval(4.5) # 小蝶名字消失后再显示其他名字 - var interval = 2.0 + var interval = 1.0 # var interval = 0.1 # 很快,测试用 var children = $seals.get_children() # 前四个按顺序,后面的乱序 @@ -39,12 +32,12 @@ func play() -> void: c.visible = false tween.tween_interval(interval) tween.tween_callback(_stamp_seal.bind(c)) - interval = lerpf(interval, 0.2, 0.35) + interval = lerpf(interval, 0.15, 0.35) # 最后一个印章消失后,稍加等待,发射完成信号 tween.tween_callback(_final_effect) tween.tween_interval(4.5) tween.tween_callback(_jump_scare) - tween.tween_interval(1.5) + tween.tween_interval(1.0) tween.tween_callback(finished.emit) # 共 6 画 28 个印章,+前 4 个独立布置,共至少 32 seals @@ -74,7 +67,6 @@ func _final_effect(): func _jump_scare(): - var tween = create_tween() # 毛玻璃模糊 / 熔蜡扭曲 # var e_materaial = $"../effect".material # tween.tween_property(e_materaial, "shader_parameter/intensity", 0.05, 1.0) @@ -85,16 +77,8 @@ func _jump_scare(): # shading_layer.flash_palette() # shading_layer.flash_glitch() - var l1 = $DirectionalLight2D - var l2 = $DirectionalLight2D2 - var polygon = $"../../Polygon2D" - tween.tween_property(l1, "energy", 1.0, 0.2) - tween.parallel().tween_property(l2, "energy", 2.0, 0.2) - tween.parallel().tween_property(polygon, "color:a", 0.5, 0.1) - tween.tween_property(l1, "energy", 0.0, 0.2) - tween.parallel().tween_property(l2, "energy", 0.0, 0.2) - tween.parallel().tween_property(polygon, "color:a", 0.0, 0.2) - + # 闪烁 + $AnimationPlayer.play("flash") # TODO 哈气 SceneManager.pop_debug_dialog_info("音效", "突然哈气") @@ -118,15 +102,3 @@ func _stamp_seal(seal: Sprite2D) -> void: var origin_scale = seal.scale create_tween().tween_property(seal, "scale", origin_scale * Vector2(1.05, 1.05), .1) create_tween().tween_property(seal, "scale", origin_scale * Vector2(1.0, 1.), .1) - - -func _draw() -> void: - if Engine.is_editor_hint(): - # draw gizmo - var area_rect = Rect2(-area_size * 0.5, area_size) - # fill - var fill_color = gizmo_outline_color - fill_color.a = 0.4 - draw_rect(area_rect, fill_color) - # outline - draw_rect(area_rect, gizmo_outline_color, false, 1.0) diff --git a/scene/player/main_player.gd b/scene/player/main_player.gd index 0290afc6..2baa27aa 100644 --- a/scene/player/main_player.gd +++ b/scene/player/main_player.gd @@ -3,6 +3,8 @@ extends CharacterBody2D class_name MainPlayer +signal os_finished + @export var camera_marker: CameraFocusMarker @export_enum("吕萍", "吕萍爬行", "吕萍带小猫", "小小蝶") var character := "吕萍": set(val): @@ -318,9 +320,11 @@ func pop_os(lines := []): os_tween.tween_callback(_os_load_line.bind(line)) os_tween.tween_callback(os_label.type_out) os_tween.tween_interval(duration) + os_tween.tween_callback(os_finished.emit) os_tween.tween_property(os_contaner, "modulate:a", 0.0, 0.2) + func _os_load_line(line): os_label.dialogue_line = line diff --git a/scene/player/main_player.tscn b/scene/player/main_player.tscn index 52f0fbf6..2394a7d4 100644 --- a/scene/player/main_player.tscn +++ b/scene/player/main_player.tscn @@ -29,7 +29,7 @@ z_index = 5 collision_mask = 2 script = ExtResource("1_3a78y") running_locked = true -debug_freeze = 7 +debug_freeze = 4 metadata/_edit_vertical_guides_ = [-120.0] metadata/_edit_horizontal_guides_ = [-9.0] diff --git a/scene/player/player_animation_config.gd b/scene/player/player_animation_config.gd index f26a724a..9d6a5ebd 100644 --- a/scene/player/player_animation_config.gd +++ b/scene/player/player_animation_config.gd @@ -94,7 +94,7 @@ var ANIMATION_CONFIG = { MOVEMENT_WALKING: [&"c01_小小蝶_walking_l", &"c01_小小蝶_walking_r"], MOVEMENT_RUNNING: [&"c01_小小蝶_running_l", &"c01_小小蝶_running_r"], # animation_name, left, right - ACTION_LOOKUP_WALL: [&"", Vector2.ONE, Vector2(0, -37.0), &"c01_小小蝶_抬头_l", &"c01_小小蝶_抬头_r"], + ACTION_LOOKUP_WALL: [&"c01_小小蝶_背面抬头", Vector2.ONE, Vector2(-3.0, -37.0), &"c01_小小蝶_抬头_l", &"c01_小小蝶_抬头_r"], # 看向橱柜(c01_s07 书店外) 5: [&"c01_小小蝶_书店外看向橱窗", Vector2.ONE, Vector2(0, -88.0)], # 敲门(c01_s07 书店外) diff --git a/scene/prop/prop_bag.gd b/scene/prop/prop_bag.gd index 8e79584b..b0885f43 100644 --- a/scene/prop/prop_bag.gd +++ b/scene/prop/prop_bag.gd @@ -59,12 +59,13 @@ func _display_item(prop_key, button): func _unhandled_input(event: InputEvent) -> void: + # bag 界面接受所有输入事件 + get_viewport().set_input_as_handled() if ( event.is_action_pressed("bag") or event.is_action_pressed("cancel") or event.is_action_pressed("escape") ): - get_viewport().set_input_as_handled() get_tree().paused = false # SceneManager.unlock_player() queue_free() diff --git a/scene/settings/settings.gd b/scene/settings/settings.gd index fb0b6f75..6caa8828 100644 --- a/scene/settings/settings.gd +++ b/scene/settings/settings.gd @@ -123,7 +123,7 @@ func _on_diary_btn_pressed() -> void: func _unhandled_key_input(event: InputEvent) -> void: if not visible: return + # settings 界面接受所有输入事件 + get_viewport().set_input_as_handled() if event.is_action_pressed("escape"): exit_settings() - # block the event - get_viewport().set_input_as_handled()