Compare commits

...

20 Commits

Author SHA1 Message Date
d01a58bb31 囚室与肉铺流程 2025-07-31 00:43:27 +08:00
87963405d4 第二章流程更新 2025-07-30 22:57:38 +08:00
3fb660dd1f Merge remote-tracking branch 'origin/demo' 2025-07-30 22:41:34 +08:00
f0e88f5d05 过道 left action key 2025-07-30 22:41:19 +08:00
e68f1e1f05 Merge remote-tracking branch 'origin/demo' 2025-07-30 21:24:25 +08:00
54383819d9 notification kill privous tween 2025-07-30 21:23:47 +08:00
1e90edab2a Merge remote-tracking branch 'origin/demo' 2025-07-30 21:09:51 +08:00
9a3cff3d84 update csv 2025-07-30 21:09:36 +08:00
bf9ca04975 Merge remote-tracking branch 'origin/demo' 2025-07-30 21:06:45 +08:00
4f684f812f show_center_notification 延长 2025-07-30 21:05:58 +08:00
df174e3182 更新 os 2025-07-30 20:56:28 +08:00
9e4d3349a8 Merge remote-tracking branch 'origin/demo' 2025-07-30 20:05:30 +08:00
713ef48e58 os 更新 2025-07-30 20:04:52 +08:00
0e1007fd49 Merge remote-tracking branch 'origin/demo' 2025-07-30 19:15:41 +08:00
4b939173d2 prop inspector prop_bg 逻辑 2025-07-30 19:13:50 +08:00
8a539c4c5e Merge remote-tracking branch 'origin/demo' 2025-07-30 18:58:18 +08:00
c3ca239518 优化 portal 表现: opened 效果,default 左右朝向 2025-07-30 18:57:49 +08:00
1ed9743c5c Merge remote-tracking branch 'origin/demo' 2025-07-30 18:20:50 +08:00
c0f7ba4915 footstep db 2025-07-30 18:18:49 +08:00
dc50c66369 audio stream collection db 控制 2025-07-30 18:17:29 +08:00
116 changed files with 1483 additions and 315 deletions

View File

@ -1,4 +1,4 @@
[gd_resource type="SpriteFrames" load_steps=76 format=3 uid="uid://cmvr3lbwe3h7p"]
[gd_resource type="SpriteFrames" load_steps=83 format=3 uid="uid://cmvr3lbwe3h7p"]
[ext_resource type="Texture2D" uid="uid://bq2o1huq46hhj" path="res://asset/art/gif/c03_特写与游戏动画/小婵特写/0.png" id="1_emjqu"]
[ext_resource type="Texture2D" uid="uid://dcwbe6hb3gdcp" path="res://asset/art/gif/c03_特写与游戏动画/父亲抱小孩/0.png" id="1_fctjd"]
@ -21,7 +21,6 @@
[ext_resource type="Texture2D" uid="uid://c5sc5ctss08qc" path="res://asset/art/gif/c03_特写与游戏动画/鬼母子神/0.png" id="5_uidoe"]
[ext_resource type="Texture2D" uid="uid://lop0mxjb5y71" path="res://asset/art/gif/c03_特写与游戏动画/癞子背坐呼吸/1.png" id="6_0df74"]
[ext_resource type="Texture2D" uid="uid://dx2v7bicpg7b4" path="res://asset/art/gif/c03_特写与游戏动画/鬼母子神/1.png" id="6_yp83y"]
[ext_resource type="Texture2D" uid="uid://bkh3cc2fg486c" path="res://asset/art/gif/c03_特写与游戏动画/鬼母子神/2.png" id="7_axfhb"]
[ext_resource type="Texture2D" uid="uid://c08v3b4prnqyt" path="res://asset/art/gif/c03_特写与游戏动画/癞子背坐呼吸/2.png" id="7_xhhcn"]
[ext_resource type="Texture2D" uid="uid://4m0ix5nhdmdf" path="res://asset/art/gif/c03_特写与游戏动画/癞子背坐呼吸/3.png" id="8_dspyd"]
[ext_resource type="Texture2D" uid="uid://d0ad1s3sfsejp" path="res://asset/art/gif/c03_特写与游戏动画/鬼母子神/3.png" id="8_yp83y"]
@ -69,10 +68,18 @@
[ext_resource type="Texture2D" uid="uid://e7g3s6jw8jh3" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/13.png" id="38_j2qi7"]
[ext_resource type="Texture2D" uid="uid://binrsq2shqkq8" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/14.png" id="39_xlxk7"]
[ext_resource type="Texture2D" uid="uid://bc0wwhlritdm2" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/15.png" id="40_i1c23"]
[ext_resource type="Texture2D" uid="uid://hak523l62h0f" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/0.png" id="40_uvt3b"]
[ext_resource type="Texture2D" uid="uid://wyem5iu0s5x6" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/16.png" id="41_i1up3"]
[ext_resource type="Texture2D" uid="uid://dlf7d17waypbi" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/1.png" id="41_spchg"]
[ext_resource type="Texture2D" uid="uid://78bim08limr5" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/17.png" id="42_3tshh"]
[ext_resource type="Texture2D" uid="uid://cfakx6tlv1vta" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/2.png" id="42_act3w"]
[ext_resource type="Texture2D" uid="uid://cn03gvg5a3ah3" path="res://asset/art/gif/c03_特写与游戏动画/小蝶爬墙晃腿/18.png" id="43_cukmc"]
[ext_resource type="Texture2D" uid="uid://c64uwlye3rbiq" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/3.png" id="43_ukae2"]
[ext_resource type="Texture2D" uid="uid://cne4t1c3lqpl4" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/4.png" id="44_qdww1"]
[ext_resource type="Texture2D" uid="uid://h41enm26fbhv" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/5.png" id="45_6wl1s"]
[ext_resource type="Texture2D" uid="uid://fir17lkl6bj0" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/6.png" id="46_52482"]
[ext_resource type="Texture2D" uid="uid://caoxsva1qvhun" path="res://asset/art/scene/c03/c03_结局特写/头发飘1.png" id="46_act3w"]
[ext_resource type="Texture2D" uid="uid://b4mjruhtldedh" path="res://asset/art/gif/c03_特写与游戏动画/招魂幡/7.png" id="47_fwddy"]
[ext_resource type="Texture2D" uid="uid://bdo6sdx23fkgy" path="res://asset/art/scene/c03/c03_结局特写/头发飘2 4.png" id="47_ukae2"]
[ext_resource type="Texture2D" uid="uid://cawpwp5j3ikjp" path="res://asset/art/scene/c03/c03_结局特写/头发飘3.png" id="48_qdww1"]
@ -298,6 +305,35 @@ animations = [{
"speed": 30.0
}, {
"frames": [{
"duration": 1.5,
"texture": ExtResource("40_uvt3b")
}, {
"duration": 1.5,
"texture": ExtResource("41_spchg")
}, {
"duration": 1.5,
"texture": ExtResource("42_act3w")
}, {
"duration": 1.5,
"texture": ExtResource("43_ukae2")
}, {
"duration": 1.5,
"texture": ExtResource("44_qdww1")
}, {
"duration": 1.5,
"texture": ExtResource("45_6wl1s")
}, {
"duration": 1.5,
"texture": ExtResource("46_52482")
}, {
"duration": 1.5,
"texture": ExtResource("47_fwddy")
}],
"loop": false,
"name": &"招魂幡",
"speed": 10.0
}, {
"frames": [{
"duration": 10.0,
"texture": ExtResource("29_cxlh3")
}, {
@ -460,9 +496,6 @@ animations = [{
"duration": 12.0,
"texture": ExtResource("6_yp83y")
}, {
"duration": 12.0,
"texture": ExtResource("7_axfhb")
}, {
"duration": 1.0,
"texture": ExtResource("8_yp83y")
}],

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hak523l62h0f"
path="res://.godot/imported/0.png-3397c0b80bbb1d667399db3a25bd7739.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/0.png"
dest_files=["res://.godot/imported/0.png-3397c0b80bbb1d667399db3a25bd7739.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dlf7d17waypbi"
path="res://.godot/imported/1.png-b7a68b8404fecce921f5d7ce2c34e2aa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/1.png"
dest_files=["res://.godot/imported/1.png-b7a68b8404fecce921f5d7ce2c34e2aa.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cfakx6tlv1vta"
path="res://.godot/imported/2.png-aad8d0ef1666cee0a45d4ba2f097cd5c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/2.png"
dest_files=["res://.godot/imported/2.png-aad8d0ef1666cee0a45d4ba2f097cd5c.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c64uwlye3rbiq"
path="res://.godot/imported/3.png-1bf9e9c6678aa100f74fd40840c16d8d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/3.png"
dest_files=["res://.godot/imported/3.png-1bf9e9c6678aa100f74fd40840c16d8d.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cne4t1c3lqpl4"
path="res://.godot/imported/4.png-67dd09cfa63dc4ab38271a3dcee7e2bd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/4.png"
dest_files=["res://.godot/imported/4.png-67dd09cfa63dc4ab38271a3dcee7e2bd.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://h41enm26fbhv"
path="res://.godot/imported/5.png-787c422e4776e976c8846da76c0c07d6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/5.png"
dest_files=["res://.godot/imported/5.png-787c422e4776e976c8846da76c0c07d6.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://fir17lkl6bj0"
path="res://.godot/imported/6.png-dec10af9fd97309f0143fe9603cc878e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/6.png"
dest_files=["res://.godot/imported/6.png-dec10af9fd97309f0143fe9603cc878e.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b4mjruhtldedh"
path="res://.godot/imported/7.png-26580ddcc99f48ef7b9f7f64f8594cf1.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c03_特写与游戏动画/招魂幡/7.png"
dest_files=["res://.godot/imported/7.png-26580ddcc99f48ef7b9f7f64f8594cf1.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cwbh3j84ctxvp"
path="res://.godot/imported/UI场景切换_right.png-9e9e1c726ef09fb205638364f6110067.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/ui/action_mark/UI场景切换_right.png"
dest_files=["res://.godot/imported/UI场景切换_right.png-9e9e1c726ef09fb205638364f6110067.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cthyxxqhb0g65"
path="res://.godot/imported/c03_棺材怪_1.ogg-7fb6efa1a040919c9c77e2af6debcb9f.oggvorbisstr"
[deps]
source_file="res://asset/audio/peiyin/c03/c03_棺材怪_1.ogg"
dest_files=["res://.godot/imported/c03_棺材怪_1.ogg-7fb6efa1a040919c9c77e2af6debcb9f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ce8rpo6mmrysf"
path="res://.godot/imported/c03_棺材怪_2.ogg-e40f4ed7d407624e04ebb19ee2433b5f.oggvorbisstr"
[deps]
source_file="res://asset/audio/peiyin/c03/c03_棺材怪_2.ogg"
dest_files=["res://.godot/imported/c03_棺材怪_2.ogg-e40f4ed7d407624e04ebb19ee2433b5f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://wt7jlambh6y"
path="res://.godot/imported/c03_棺材怪_3.ogg-1c0d87dfb11aa9515f9604efbb76f51d.oggvorbisstr"
[deps]
source_file="res://asset/audio/peiyin/c03/c03_棺材怪_3.ogg"
dest_files=["res://.godot/imported/c03_棺材怪_3.ogg-1c0d87dfb11aa9515f9604efbb76f51d.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://d3yc0gbgivrjb"
path="res://.godot/imported/sfx瞎子卧室灰姑.ogg-1f574c766c82604ebfc874202859ca8c.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/sfx瞎子卧室灰姑.ogg"
dest_files=["res://.godot/imported/sfx瞎子卧室灰姑.ogg-1f574c766c82604ebfc874202859ca8c.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://4vhd263cfr2o"
path="res://.godot/imported/sfx瞎子卧室灰姑出场.ogg-5422b62cb38584ac7ba2b89b789359f9.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/sfx瞎子卧室灰姑出场.ogg"
dest_files=["res://.godot/imported/sfx瞎子卧室灰姑出场.ogg-5422b62cb38584ac7ba2b89b789359f9.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dwgmsimffey73"
path="res://.godot/imported/sfx瞎子卧室灰姑氛围.ogg-3ee28d2fddf8bb28120d1047ba19437d.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/sfx瞎子卧室灰姑氛围.ogg"
dest_files=["res://.godot/imported/sfx瞎子卧室灰姑氛围.ogg-3ee28d2fddf8bb28120d1047ba19437d.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bkbs5hwxuou4r"
path="res://.godot/imported/李氏纸人呼吸.ogg-41c92b4f59f09e0ba3beaa5375699c6c.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/李氏纸人呼吸.ogg"
dest_files=["res://.godot/imported/李氏纸人呼吸.ogg-41c92b4f59f09e0ba3beaa5375699c6c.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cfsx6yqrw5gp4"
path="res://.godot/imported/棺材怪呼吸.ogg-ea77520856a55557e9e02e7ec9883c6e.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/棺材怪呼吸.ogg"
dest_files=["res://.godot/imported/棺材怪呼吸.ogg-ea77520856a55557e9e02e7ec9883c6e.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ciorujxybm1kh"
path="res://.godot/imported/进入胖子房间后单次播放.ogg-4dc4c5091566e2003c32e997d9f8244f.oggvorbisstr"
[deps]
source_file="res://asset/audio/sfx/交互/第二章/进入胖子房间后单次播放.ogg"
dest_files=["res://.godot/imported/进入胖子房间后单次播放.ogg-4dc4c5091566e2003c32e997d9f8244f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -11,12 +11,31 @@ For more information see the online documentation.,For more information see the
(看病费用涨价,为了攒钱让小蝶上学,),(看病费用涨价,为了攒钱让小蝶上学,),陆仁,,
(小蝶想请小蝉来家里吃饭,写了请柬),(小蝶想请小蝉来家里吃饭,写了请柬),小蝶,,
(父母让小蝶去送请柬,顺便带肉回家做饭),(父母让小蝶去送请柬,顺便带肉回家做饭),陆仁,,
棺材怪_1,好疼啊...,,,
棺材怪_2,我的儿啊,,,
棺材怪_3,求求你...,,,
c03_棺材怪_1,好疼啊...,,,
c03_棺材怪_2,我的儿啊,,,
c03_棺材怪_3,求求你...,,,
咱们看毛病的铜钱是不是要涨一涨了。,咱们看毛病的铜钱是不是要涨一涨了。,陆仁,,
现在外头的东西一天一个价,哪一样事情覅用铜钱?小蝶也到了要读书的年纪... [ID:],现在外头的东西一天一个价,哪一样事情覅用铜钱?小蝶也到了要读书的年纪... [ID:],陆仁,,
我们平头老百姓,总为以后打算的。 [ID:],我们平头老百姓,总为以后打算的。 [ID:],陆仁,,
个么...爸爸,前头侬答应过我的可以让小蝉来屋里厢吃饭的事情,还作数伐? [ID:],个么...爸爸,前头侬答应过我的可以让小蝉来屋里厢吃饭的事情,还作数伐? [ID:],小小蝶,,
作数,当然作数了。肉庄里的肉都订好了,就等着今朝去拿呢。 [ID:],作数,当然作数了。肉庄里的肉都订好了,就等着今朝去拿呢。 [ID:],陆仁,,
侬不是帮人家写了请贴吗?送好请贴回来的时候记得把肉带回来,千万覅忘记掉。 [ID:],侬不是帮人家写了请贴吗?送好请贴回来的时候记得把肉带回来,千万覅忘记掉。 [ID:],陆仁,,
有数!嘿嘿。 [ID:],有数!嘿嘿。 [ID:],小小蝶,,
那个...方叔叔,小蝉在吗? [ID:],那个...方叔叔,小蝉在吗? [ID:],小小蝶,,
咳咳,她,咳咳,不在。 [ID:],咳咳,她,咳咳,不在。 [ID:],瞎子,,
她是生病了吗,好几天没见她了。 [ID:],她是生病了吗,好几天没见她了。 [ID:],小小蝶,,
她... [ID:],她... [ID:],瞎子,,
我挨家挨户地问啊,都说没看见她。 [ID:],我挨家挨户地问啊,都说没看见她。 [ID:],瞎子,,
一个活生生的小孩子,就这么找不见了... [ID:],一个活生生的小孩子,就这么找不见了... [ID:],瞎子,,
哪能嘎像的,像活过来了一样... [ID:],哪能嘎像的,像活过来了一样... [ID:],肉铺胖子,,
册那!现在赎药还要多收铜钱啊?老板大概落了铜钱眼里去了! [ID:],册那!现在赎药还要多收铜钱啊?老板大概落了铜钱眼里去了! [ID:],李氏,,
生活都做好了伐? [ID:],生活都做好了伐? [ID:],癞子,,
好了么走了,搓麻将去了!张老板,三缺一! [ID:],好了么走了,搓麻将去了!张老板,三缺一! [ID:],癞子,,
一天天就想刮我身上这点油水了! [ID:],一天天就想刮我身上这点油水了! [ID:],肉铺胖子,,
唉,走,过过手念头过过手念头! [ID:],唉,走,过过手念头过过手念头! [ID:],肉铺胖子,,
c03_理发店_癞子_8,我家那个昨天想拿推子给我剃头,差点给我开了瓢!,癞子,,
c03_理发店_癞子_9,你瞅瞅,这么长一道血印子!唉呀...,癞子,,
c03_理发店_瞎子_15,可不能这么说。,瞎子,,
@ -29,7 +48,7 @@ c03_理发店_癞子_12,妇人家家的,不知道从哪打听到用男人的
c03_理发店_癞子_13,...你听过这说法没有?,癞子,,
c03_理发店_瞎子_19,我不懂医,不好乱说。,瞎子,,
c03_理发店_癞子_14,最近街上也是彻底乱了套,那些人看见你留了“阴阳头”,就跟那闻着味儿的狗一样凑过来...,癞子,,
c03_理发店_癞子_15,哦,瞧我这记性,忘了你眼神不好,不爱出门。,癞子,,
c03_理发店_癞子_15,哦,瞧我这记性,忘了你眼神不好,不爱出门。,癞子,,[#wait=1.5]
c03_理发店_小小蝶_5,方叔叔,我来找小蝉玩儿,她在屋里吗?,小小蝶,,
c03_理发店_瞎子_20,她摔了一跤,还睡着呢,我喊她起来?,瞎子,,
c03_理发店_小小蝶_6,不用不用,我在这等一会儿就行。,小小蝶,,
@ -89,3 +108,74 @@ c03_理发店_小小蝶_7,谢谢方叔叔。,小小蝶,,
我也得早点回去,没准小蝉今儿个能回来,我总惦记着回去看看。,我也得早点回去,没准小蝉今儿个能回来,我总惦记着回去看看。,瞎子,,
天黑了,你们回去都小心着点。,天黑了,你们回去都小心着点。,李氏,,
嘶...,嘶...,癞子,,
侬叫我哪能相信伐子!,侬叫我哪能相信伐子!,李氏,,
我阿弟只有十六岁,又不吃香烟不吃老酒不打牌,脾气也好,都讲他下趟老有出息的!,我阿弟只有十六岁,又不吃香烟不吃老酒不打牌,脾气也好,都讲他下趟老有出息的!,李氏,,
哪能就、就...(哽咽、抽泣声),哪能就、就...(哽咽、抽泣声),李氏,,
一开始小阿弟身体确实好了较关,吃的落困的着,帮老早差不多了。,一开始小阿弟身体确实好了较关,吃的落困的着,帮老早差不多了。,癞子,,
结果开心了没几天,突然(了么生头)人就没了,连句闲话都没讲。,结果开心了没几天,突然(了么生头)人就没了,连句闲话都没讲。,癞子,,
这就是人家说的“回光返照”(“回光返照”可用带重庆口音的普通话或直接普通话)。,这就是人家说的“回光返照”(“回光返照”可用带重庆口音的普通话或直接普通话)。,癞子,,
毛病重的人要死之前精神头会的变好的,帮正常人差不多的,时间到了,就一脚去了。,毛病重的人要死之前精神头会的变好的,帮正常人差不多的,时间到了,就一脚去了。,癞子,,
是不是这方子拿我们阿弟吃死掉了,我就讲好好叫的人哪能一记头就没了...,是不是这方子拿我们阿弟吃死掉了,我就讲好好叫的人哪能一记头就没了...,李氏,,
要是平常时间,我肯定不会瞎讲八讲的。,要是平常时间,我肯定不会瞎讲八讲的。,瞎子,,
不过看你们这副样子,我也就不瞒你们了。,不过看你们这副样子,我也就不瞒你们了。,瞎子,,
去年子我算过一趟,你们阿弟的面相长寿的,照道理讲...不应该现在死呀。,去年子我算过一趟,你们阿弟的面相长寿的,照道理讲...不应该现在死呀。,瞎子,,
覅让我知道是啥人,否则我就弄杀特他!,覅让我知道是啥人,否则我就弄杀特他!,李氏,,
方大哥,(压低声音)阿哥,侬看出点啥了伐?,方大哥,(压低声音)阿哥,侬看出点啥了伐?,李氏,,
这种事情就算我晓得,也不好教你们去害人的。,这种事情就算我晓得,也不好教你们去害人的。,瞎子,,
你们好跑了,我还要去问问告示都贴完了伐,不够的闲话还要再写两张...,你们好跑了,我还要去问问告示都贴完了伐,不够的闲话还要再写两张...,瞎子,,
咦?哪能没开门?不应该啊...,咦?哪能没开门?不应该啊...,陆仁,,
张老板?张老板?,张老板?张老板?,陆仁,,
...,...,陆仁,,
算了,有可能人家办事去了,咱们过两天再来伐。,算了,有可能人家办事去了,咱们过两天再来伐。,陆仁,,
老板就在店里厢呀。,老板就在店里厢呀。,小小蝶,,
侬这孩子,啥人讲给你听的?,侬这孩子,啥人讲给你听的?,陆仁,,
喏,是它讲的呀。,喏,是它讲的呀。,小小蝶,,
侬要是不相信么,我现在就问问它,老板到底在啥地方...,侬要是不相信么,我现在就问问它,老板到底在啥地方...,小小蝶,,
爸爸,它讲,它晓得小蝉在啥地方。,爸爸,它讲,它晓得小蝉在啥地方。,小小蝶,,
侬覅、(深吸一口气)这种鬼出莫辩(句测老逼)的事情伐好瞎讲的,听到了伐!,侬覅、(深吸一口气)这种鬼出莫辩(句测老逼)的事情伐好瞎讲的,听到了伐!,陆仁,,
c03_棺材怪_1,好疼啊...,,,
c03_棺材怪_2,我的儿啊,,,
c03_棺材怪_3,求求你...,,,
侬哪能又来了。,侬哪能又来了。,探子,,
侬在看啥?,侬在看啥?,肉铺胖子,,
看人家过河帮,吃力(撒度)了就算算加减法。,看人家过河帮,吃力(撒度)了就算算加减法。,探子,,
格搭除了我们,啥还有其他人阿?,格搭除了我们,啥还有其他人阿?,肉铺胖子,,
文开呀,人家都讲你港,讲的真的一点不错。,文开呀,人家都讲你港,讲的真的一点不错。,探子,,
他们就是老早死在河帮里厢的人呀!,他们就是老早死在河帮里厢的人呀!,探子,,
要不是你们拦了嘿,他们老早就跑掉了。,要不是你们拦了嘿,他们老早就跑掉了。,探子,,
跑?跑到啥方去啊?,跑?跑到啥方去啊?,肉铺胖子,,
跑到外地去,讲不定就死不掉了呢。,跑到外地去,讲不定就死不掉了呢。,探子,,
...侬跟他们不一样。,...侬跟他们不一样。,肉铺胖子,,
对额!想当初侬一记头就看出来我是细作。,对额!想当初侬一记头就看出来我是细作。,探子,,
侬有点小聪明的,想拿我抓回去,也好吃顿饱饭。,侬有点小聪明的,想拿我抓回去,也好吃顿饱饭。,探子,,
不过侬太年轻、人么又瘦,就这样一趟翻身的机会侬浪费掉了。,不过侬太年轻、人么又瘦,就这样一趟翻身的机会侬浪费掉了。,探子,,
但是要我讲哦,最最重要的是啥东西侬晓得哇...,但是要我讲哦,最最重要的是啥东西侬晓得哇...,探子,,
要讲就讲,别装模作样。,要讲就讲,别装模作样。,肉铺胖子,,
侬跟他们一样,这条河帮你也过不过去的。,侬跟他们一样,这条河帮你也过不过去的。,探子,,
作孽啊...,作孽啊...,探子,,
喏,侬的玻璃弹子,我帮侬拿回来了。,喏,侬的玻璃弹子,我帮侬拿回来了。,小小蝶,,
谢谢。,谢谢。,小蝉,,
你的弹子老好看的,我从来没看到过这种样子的。,你的弹子老好看的,我从来没看到过这种样子的。,小小蝶,,
...侬要欢喜,我就送给侬。,...侬要欢喜,我就送给侬。,小蝉,,
谢谢侬,但是我(阿拉)爸不让我玩这个。,谢谢侬,但是我(阿拉)爸不让我玩这个。,小小蝶,,
他老是讲小姑娘要文一点,要有小姑娘的样子,其实...我玻璃弹子打的比他们好的多呢。,他老是讲小姑娘要文一点,要有小姑娘的样子,其实...我玻璃弹子打的比他们好的多呢。,小小蝶,,
...你(呐)爸爸呢?,...你(呐)爸爸呢?,小小蝶,,
嗯...他蛮好的。,嗯...他蛮好的。,小蝉,,
他管侬管的紧哇,是不是经常会的讲‘都是为了侬好’这种闲话啊?,他管侬管的紧哇,是不是经常会的讲‘都是为了侬好’这种闲话啊?,小小蝶,,
有时候(辰光)会的,他蛮吓人的。,有时候(辰光)会的,他蛮吓人的。,小蝉,,
我、我不想惹za他不开心。,我、我不想惹za他不开心。,小蝉,,
还是当大人好。等我们长大了,就没人再讲咱们是一懂不懂的小朋友了。,还是当大人好。等我们长大了,就没人再讲咱们是一懂不懂的小朋友了。,小小蝶,,
到那个时候,我欢喜撒就组撒、伐想组就伐组,彻底解放了!,到那个时候,我欢喜撒就组撒、伐想组就伐组,彻底解放了!,小小蝶,,
真好啊。,真好啊。,小蝉,,
诶,我马上就要过生日了!侬想...咦,妈妈,侬哪能来了?,诶,我马上就要过生日了!侬想...咦,妈妈,侬哪能来了?,小小蝶,,
那个,这是我刚刚认识的好朋友,她叫、她叫...,那个,这是我刚刚认识的好朋友,她叫、她叫...,小小蝶,,
我叫方小蝉。,我叫方小蝉。,小蝉,,
阿姨,你们是伐是要回起吃饭啦,我爸爸...等些阿要叫我回起了。,阿姨,你们是伐是要回起吃饭啦,我爸爸...等些阿要叫我回起了。,小蝉,,
再、再见。,再、再见。,小蝉,,
我要是还活着…就能拉你起来了,我要是还活着…就能拉你起来了,小蝉,,
方小蝉?我好像…想起你是谁了…,方小蝉?我好像…想起你是谁了…,小蝶,,
嗯…那你可以…离开这里了吗?,嗯…那你可以…离开这里了吗?,小蝉,,
是否答应小蝉离开这里?,是否答应小蝉离开这里?,,,
是,是,(response),,
否,否,(response),,
你…为什么要…诶?,你…为什么要…诶?,小蝶,,

1 keys zh_CN _character _notes _tags
11 (看病费用涨价,为了攒钱让小蝶上学,) (看病费用涨价,为了攒钱让小蝶上学,) 陆仁
12 (小蝶想请小蝉来家里吃饭,写了请柬) (小蝶想请小蝉来家里吃饭,写了请柬) 小蝶
13 (父母让小蝶去送请柬,顺便带肉回家做饭) (父母让小蝶去送请柬,顺便带肉回家做饭) 陆仁
14 棺材怪_1 好疼啊... ???
15 棺材怪_2 我的儿啊 ???
16 棺材怪_3 求求你... ???
17 c03_棺材怪_1 好疼啊... ???
18 c03_棺材怪_2 我的儿啊 ???
19 c03_棺材怪_3 求求你... ???
20 咱们看毛病的铜钱是不是要涨一涨了。 咱们看毛病的铜钱是不是要涨一涨了。 陆仁
21 现在外头的东西一天一个价,哪一样事情覅用铜钱?小蝶也到了要读书的年纪... [ID:] 现在外头的东西一天一个价,哪一样事情覅用铜钱?小蝶也到了要读书的年纪... [ID:] 陆仁
22 我们平头老百姓,总为以后打算的。 [ID:] 我们平头老百姓,总为以后打算的。 [ID:] 陆仁
23 个么...爸爸,前头侬答应过我的可以让小蝉来屋里厢吃饭的事情,还作数伐? [ID:] 个么...爸爸,前头侬答应过我的可以让小蝉来屋里厢吃饭的事情,还作数伐? [ID:] 小小蝶
24 作数,当然作数了。肉庄里的肉都订好了,就等着今朝去拿呢。 [ID:] 作数,当然作数了。肉庄里的肉都订好了,就等着今朝去拿呢。 [ID:] 陆仁
25 侬不是帮人家写了请贴吗?送好请贴回来的时候记得把肉带回来,千万覅忘记掉。 [ID:] 侬不是帮人家写了请贴吗?送好请贴回来的时候记得把肉带回来,千万覅忘记掉。 [ID:] 陆仁
26 有数!嘿嘿。 [ID:] 有数!嘿嘿。 [ID:] 小小蝶
27 那个...方叔叔,小蝉在吗? [ID:] 那个...方叔叔,小蝉在吗? [ID:] 小小蝶
28 咳咳,她,咳咳,不在。 [ID:] 咳咳,她,咳咳,不在。 [ID:] 瞎子
29 她是生病了吗,好几天没见她了。 [ID:] 她是生病了吗,好几天没见她了。 [ID:] 小小蝶
30 她... [ID:] 她... [ID:] 瞎子
31 我挨家挨户地问啊,都说没看见她。 [ID:] 我挨家挨户地问啊,都说没看见她。 [ID:] 瞎子
32 一个活生生的小孩子,就这么找不见了... [ID:] 一个活生生的小孩子,就这么找不见了... [ID:] 瞎子
33 哪能嘎像的,像活过来了一样... [ID:] 哪能嘎像的,像活过来了一样... [ID:] 肉铺胖子
34 册那!现在赎药还要多收铜钱啊?老板大概落了铜钱眼里去了! [ID:] 册那!现在赎药还要多收铜钱啊?老板大概落了铜钱眼里去了! [ID:] 李氏
35 生活都做好了伐? [ID:] 生活都做好了伐? [ID:] 癞子
36 好了么走了,搓麻将去了!张老板,三缺一! [ID:] 好了么走了,搓麻将去了!张老板,三缺一! [ID:] 癞子
37 一天天就想刮我身上这点油水了! [ID:] 一天天就想刮我身上这点油水了! [ID:] 肉铺胖子
38 唉,走,过过手念头过过手念头! [ID:] 唉,走,过过手念头过过手念头! [ID:] 肉铺胖子
39 c03_理发店_癞子_8 我家那个昨天想拿推子给我剃头,差点给我开了瓢! 癞子
40 c03_理发店_癞子_9 你瞅瞅,这么长一道血印子!唉呀... 癞子
41 c03_理发店_瞎子_15 可不能这么说。 瞎子
48 c03_理发店_癞子_13 ...你听过这说法没有? 癞子
49 c03_理发店_瞎子_19 我不懂医,不好乱说。 瞎子
50 c03_理发店_癞子_14 最近街上也是彻底乱了套,那些人看见你留了“阴阳头”,就跟那闻着味儿的狗一样凑过来... 癞子
51 c03_理发店_癞子_15 哦,瞧我这记性,忘了你眼神不好,不爱出门。 癞子 [#wait=1.5]
52 c03_理发店_小小蝶_5 方叔叔,我来找小蝉玩儿,她在屋里吗? 小小蝶
53 c03_理发店_瞎子_20 她摔了一跤,还睡着呢,我喊她起来? 瞎子
54 c03_理发店_小小蝶_6 不用不用,我在这等一会儿就行。 小小蝶
108 我也得早点回去,没准小蝉今儿个能回来,我总惦记着回去看看。 我也得早点回去,没准小蝉今儿个能回来,我总惦记着回去看看。 瞎子
109 天黑了,你们回去都小心着点。 天黑了,你们回去都小心着点。 李氏
110 嘶... 嘶... 癞子
111 侬叫我哪能相信伐子! 侬叫我哪能相信伐子! 李氏
112 我阿弟只有十六岁,又不吃香烟不吃老酒不打牌,脾气也好,都讲他下趟老有出息的! 我阿弟只有十六岁,又不吃香烟不吃老酒不打牌,脾气也好,都讲他下趟老有出息的! 李氏
113 哪能就、就...(哽咽、抽泣声) 哪能就、就...(哽咽、抽泣声) 李氏
114 一开始小阿弟身体确实好了较关,吃的落困的着,帮老早差不多了。 一开始小阿弟身体确实好了较关,吃的落困的着,帮老早差不多了。 癞子
115 结果开心了没几天,突然(了么生头)人就没了,连句闲话都没讲。 结果开心了没几天,突然(了么生头)人就没了,连句闲话都没讲。 癞子
116 这就是人家说的“回光返照”(“回光返照”可用带重庆口音的普通话或直接普通话)。 这就是人家说的“回光返照”(“回光返照”可用带重庆口音的普通话或直接普通话)。 癞子
117 毛病重的人要死之前精神头会的变好的,帮正常人差不多的,时间到了,就一脚去了。 毛病重的人要死之前精神头会的变好的,帮正常人差不多的,时间到了,就一脚去了。 癞子
118 是不是这方子拿我们阿弟吃死掉了,我就讲好好叫的人哪能一记头就没了... 是不是这方子拿我们阿弟吃死掉了,我就讲好好叫的人哪能一记头就没了... 李氏
119 要是平常时间,我肯定不会瞎讲八讲的。 要是平常时间,我肯定不会瞎讲八讲的。 瞎子
120 不过看你们这副样子,我也就不瞒你们了。 不过看你们这副样子,我也就不瞒你们了。 瞎子
121 去年子我算过一趟,你们阿弟的面相长寿的,照道理讲...不应该现在死呀。 去年子我算过一趟,你们阿弟的面相长寿的,照道理讲...不应该现在死呀。 瞎子
122 覅让我知道是啥人,否则我就弄杀特他! 覅让我知道是啥人,否则我就弄杀特他! 李氏
123 方大哥,(压低声音)阿哥,侬看出点啥了伐? 方大哥,(压低声音)阿哥,侬看出点啥了伐? 李氏
124 这种事情就算我晓得,也不好教你们去害人的。 这种事情就算我晓得,也不好教你们去害人的。 瞎子
125 你们好跑了,我还要去问问告示都贴完了伐,不够的闲话还要再写两张... 你们好跑了,我还要去问问告示都贴完了伐,不够的闲话还要再写两张... 瞎子
126 咦?哪能没开门?不应该啊... 咦?哪能没开门?不应该啊... 陆仁
127 张老板?张老板? 张老板?张老板? 陆仁
128 ... ... 陆仁
129 算了,有可能人家办事去了,咱们过两天再来伐。 算了,有可能人家办事去了,咱们过两天再来伐。 陆仁
130 老板就在店里厢呀。 老板就在店里厢呀。 小小蝶
131 侬这孩子,啥人讲给你听的? 侬这孩子,啥人讲给你听的? 陆仁
132 喏,是它讲的呀。 喏,是它讲的呀。 小小蝶
133 侬要是不相信么,我现在就问问它,老板到底在啥地方... 侬要是不相信么,我现在就问问它,老板到底在啥地方... 小小蝶
134 爸爸,它讲,它晓得小蝉在啥地方。 爸爸,它讲,它晓得小蝉在啥地方。 小小蝶
135 侬覅、(深吸一口气)这种鬼出莫辩(句测老逼)的事情伐好瞎讲的,听到了伐! 侬覅、(深吸一口气)这种鬼出莫辩(句测老逼)的事情伐好瞎讲的,听到了伐! 陆仁
136 c03_棺材怪_1 好疼啊... ???
137 c03_棺材怪_2 我的儿啊 ???
138 c03_棺材怪_3 求求你... ???
139 侬哪能又来了。 侬哪能又来了。 探子
140 侬在看啥? 侬在看啥? 肉铺胖子
141 看人家过河帮,吃力(撒度)了就算算加减法。 看人家过河帮,吃力(撒度)了就算算加减法。 探子
142 格搭除了我们,啥还有其他人阿? 格搭除了我们,啥还有其他人阿? 肉铺胖子
143 文开呀,人家都讲你港,讲的真的一点不错。 文开呀,人家都讲你港,讲的真的一点不错。 探子
144 他们就是老早死在河帮里厢的人呀! 他们就是老早死在河帮里厢的人呀! 探子
145 要不是你们拦了嘿,他们老早就跑掉了。 要不是你们拦了嘿,他们老早就跑掉了。 探子
146 跑?跑到啥方去啊? 跑?跑到啥方去啊? 肉铺胖子
147 跑到外地去,讲不定就死不掉了呢。 跑到外地去,讲不定就死不掉了呢。 探子
148 ...侬跟他们不一样。 ...侬跟他们不一样。 肉铺胖子
149 对额!想当初侬一记头就看出来我是细作。 对额!想当初侬一记头就看出来我是细作。 探子
150 侬有点小聪明的,想拿我抓回去,也好吃顿饱饭。 侬有点小聪明的,想拿我抓回去,也好吃顿饱饭。 探子
151 不过侬太年轻、人么又瘦,就这样一趟翻身的机会侬浪费掉了。 不过侬太年轻、人么又瘦,就这样一趟翻身的机会侬浪费掉了。 探子
152 但是要我讲哦,最最重要的是啥东西侬晓得哇... 但是要我讲哦,最最重要的是啥东西侬晓得哇... 探子
153 要讲就讲,别装模作样。 要讲就讲,别装模作样。 肉铺胖子
154 侬跟他们一样,这条河帮你也过不过去的。 侬跟他们一样,这条河帮你也过不过去的。 探子
155 作孽啊... 作孽啊... 探子
156 喏,侬的玻璃弹子,我帮侬拿回来了。 喏,侬的玻璃弹子,我帮侬拿回来了。 小小蝶
157 谢谢。 谢谢。 小蝉
158 你的弹子老好看的,我从来没看到过这种样子的。 你的弹子老好看的,我从来没看到过这种样子的。 小小蝶
159 ...侬要欢喜,我就送给侬。 ...侬要欢喜,我就送给侬。 小蝉
160 谢谢侬,但是我(阿拉)爸不让我玩这个。 谢谢侬,但是我(阿拉)爸不让我玩这个。 小小蝶
161 他老是讲小姑娘要文一点,要有小姑娘的样子,其实...我玻璃弹子打的比他们好的多呢。 他老是讲小姑娘要文一点,要有小姑娘的样子,其实...我玻璃弹子打的比他们好的多呢。 小小蝶
162 ...你(呐)爸爸呢? ...你(呐)爸爸呢? 小小蝶
163 嗯...他蛮好的。 嗯...他蛮好的。 小蝉
164 他管侬管的紧哇,是不是经常会的讲‘都是为了侬好’这种闲话啊? 他管侬管的紧哇,是不是经常会的讲‘都是为了侬好’这种闲话啊? 小小蝶
165 有时候(辰光)会的,他蛮吓人的。 有时候(辰光)会的,他蛮吓人的。 小蝉
166 我、我不想惹(za)他不开心。 我、我不想惹(za)他不开心。 小蝉
167 还是当大人好。等我们长大了,就没人再讲咱们是一懂不懂的小朋友了。 还是当大人好。等我们长大了,就没人再讲咱们是一懂不懂的小朋友了。 小小蝶
168 到那个时候,我欢喜撒就组撒、伐想组就伐组,彻底解放了! 到那个时候,我欢喜撒就组撒、伐想组就伐组,彻底解放了! 小小蝶
169 真好啊。 真好啊。 小蝉
170 诶,我马上就要过生日了!侬想...咦,妈妈,侬哪能来了? 诶,我马上就要过生日了!侬想...咦,妈妈,侬哪能来了? 小小蝶
171 那个,这是我刚刚认识的好朋友,她叫、她叫... 那个,这是我刚刚认识的好朋友,她叫、她叫... 小小蝶
172 我叫方小蝉。 我叫方小蝉。 小蝉
173 阿姨,你们是伐是要回起吃饭啦,我爸爸...等些阿要叫我回起了。 阿姨,你们是伐是要回起吃饭啦,我爸爸...等些阿要叫我回起了。 小蝉
174 再、再见。 再、再见。 小蝉
175 我要是还活着…就能拉你起来了 我要是还活着…就能拉你起来了 小蝉
176 方小蝉?我好像…想起你是谁了… 方小蝉?我好像…想起你是谁了… 小蝶
177 嗯…那你可以…离开这里了吗? 嗯…那你可以…离开这里了吗? 小蝉
178 是否答应小蝉离开这里? 是否答应小蝉离开这里?
179 (response)
180 (response)
181 你…为什么要…诶? 你…为什么要…诶? 小蝶

View File

@ -192,6 +192,12 @@
陆仁: 侬覅、(深吸一口气)这种鬼出莫辩(句测老逼)的事情伐好瞎讲的,听到了伐!
=> END
~ c03_棺材怪
# 不使用字幕
: 好疼啊... [ID:c03_棺材怪_1]
: 我的儿啊 [ID:c03_棺材怪_2]
: 求求你... [ID:c03_棺材怪_3]
=> END
~ c03_胖子游戏对白
探子: 侬哪能又来了。

View File

@ -1 +0,0 @@
keys,zh_CN,_character,_notes,_tags
1 keys zh_CN _character _notes _tags

View File

@ -1,17 +0,0 @@
[remap]
importer="csv_translation"
type="Translation"
uid="uid://biw8l6b4d3v3j"
[deps]
files=["res://asset/dialogue/event_stage.zh_CN.translation"]
source_file="res://asset/dialogue/event_stage.csv"
dest_files=["res://asset/dialogue/event_stage.zh_CN.translation"]
[params]
compress=true
delimiter=0

View File

@ -15,6 +15,7 @@ c03_s01_meat_put: 0:初始化 1:已放肉
c03_invite_xchan_supper: 0:初始化 1:已偷听_需邀请 2:完成邀请_待交互小猫 3:已交互小猫 4:已拿钥匙
# 理发店剪辫子
c03_s03_laizi_braid: 0:初始化 1:已剪下辫子 2:演出结束
c03_s03_laizi_breath: 0:初始化 1:划伤_呼吸结束
# 二楼瞎子偷听&挡路纸人
c03_f2_madman_runaway: 0:初始化 1:跑开_纸人挡路 2:消除纸人
c03_invite_xchan_supper=4 & c03_s03_laizi_braid=2 -> c03_f2_madman_runaway=2

View File

@ -24,19 +24,19 @@ ui_秒,秒,,,,,seconds
setting_主播模式,主播模式,,,,,Streamer Mode
setting_返回,返回,,,,,Back
setting_确认,确认,,,,,Confirm
bag_tab_笔记,线索,,,,,Clues
bag_tab_物品,物件,,,,,Items
bag_tab_记忆,记忆,,,,,Memories
bag_tab_笔记,线索(N),,,,,Clues(N)
bag_tab_物品,物件(B),,,,,Items(B)
bag_tab_记忆,记忆(M),,,,,Memories(M)
ui_saved_all,已保存所有数据,,,,,All data saved
ui_new_archive,已创建新存档,,,,,New save file created
ui_auto_saved,自动保存成功,,,,,Auto save successful
ui_notify_important_item_update,重要物品已更新,,,,,Important items updated
ui_notify_note_update,线索笔记已更新,,,,,Clue notes updated
ui_notify_mem_update,回忆已更新,,,,,Memories updated
ui_center_notify_a_d_to_move,按 A/D 可左右移动,,,,,Press A/D to Move
ui_center_notify_press_e_to_interact,按 E 可与场景互动,,,,,Press E to interact
ui_center_notify_press_q_to_exit,按 Q 可退出,,,,,Press Q to exit
ui_center_notify_use_prop,按 E 使用道具,,,,,Press E to use item
ui_center_notify_lack_of_scissor,需要剪刀,,,,,
ui_center_notify_check_note,按 N 查看线索笔记,,,,,Press N to check clue notes
ui_center_notify_check_bag,按 B 查看重要物品,,,,,Press B to check important items
ui_center_notify_right_click_prop,右键点击可检阅道具,,,,,Right-click to examine item
@ -47,6 +47,7 @@ ui_press_shift,按住 Shift 奔跑,,,,,Hold Shift to run
ui_boxcat_press_s,按住 S 躲藏,,,,,Hold S to hide
input_拼凑信件,点击选择信件碎片方向键移动E 旋碎片转Q 退出,,,,,"Click to select letter fragments, arrow keys to move, E to rotate, Q to exit"
input_书架游戏,点击书本可选中或交换Q 退出,,,,,"Click books to select or swap, Q to exit"
ui_center_notify_lack_of_scissor,需要剪刀,,,,,
input_麻将游戏_麻将不足,还缺一块麻将,,,,,
input_麻将整理游戏_开始方式,取出「三筒」开启整理,,,,,
input_麻将游戏_交换规则,依次点击两块麻将可进行交换,,,,,
@ -58,7 +59,9 @@ ui_center_notify_c03药车不能再取药材,同种药材只能取出一份,,,,,
ui_center_notify_c03放到碗中或原处,药材只能放到碗中或原处,,,,,
ui_center_notify_c03碗口放入药材,从碗口处放入药材,,,,,
ui_center_notify_c03准备研磨,已准备好研磨,,,,,
ui_center_notify_c03绞肉机缺少转轮,缺少转轮,按 E 使用道具,,,,,
ui_获得道具,获得道具,,,,,Item Obtained
ui_获得重要物品,重要物品,,,,,
ui_退出,退出,,,,,Exit
ui_阅读,阅读,,,,,Read
ui_检阅,检阅,,,,,Examine
@ -108,14 +111,14 @@ prop_一把香,一把香,,,[#texture=c03/一把香.png],,Bundle of Incense
prop_一把香_说明,三炷细香捆成一束,香头微微发黑,散发着淡淡的檀木气息,,,,,
prop_麻将2,麻将(二),,,[#texture=c03/麻将2.png][#inspect=c03/ux_麻将2.png],,
prop_麻将2_说明,上面的幺鸡图是鸟和鸡的组合,幺字在南方的方言中有一的意思,,,,,
prop_一碗浆糊,一碗浆糊,,,[#texture=c03/一碗浆糊.png][#inspect=c03/ux_一碗浆糊.png],,
prop_一碗浆糊_说明,用面粉调制的黏糊糊的浆液,表面已经结了一层薄膜,,,,,
prop_浆糊,一碗浆糊,,,[#texture=c03/一碗浆糊.png][#inspect=c03/ux_一碗浆糊.png],,
prop_浆糊_说明,用面粉调制的黏糊糊的浆液,表面已经结了一层薄膜,,,,,
prop_纸舌头,纸舌头,,,[#texture=c03/下半部的舌头.png][#inspect=c03/ux_下半部的舌头.png],,
prop_纸舌头_说明,用红纸剪成的舌头形状,边缘参差不齐,像是匆忙剪下的,,,,,
prop_刀把,刀把,,,[#texture=c03/刀把.png][#inspect=c03/ux_刀把.png],,
prop_刀把_说明,木质刀柄,表面磨得发亮,刀身不知去向,,,,,
prop_剪下的辫子,剪下的辫子,,,[#texture=c03/剪下的辫子.png][#inspect=c03/ux_剪下的辫子.png],,
prop_剪下的辫子_说明,王守义的辫子,是他极其宝贝之物,油亮浓密,没生虱子,,,,,
prop_辫子,剪下的辫子,,,[#texture=c03/剪下的辫子.png][#inspect=c03/ux_剪下的辫子.png],,
prop_辫子_说明,王守义的辫子,是他极其宝贝之物,油亮浓密,没生虱子,,,,,
prop_纸铜钱1,纸铜钱,,,[#texture=c03/纸铜钱1.png][#inspect=c03/ux_纸铜钱1.png],,
prop_纸铜钱1_说明,用黄纸剪成的圆形铜钱,中间有方孔,做工颇为精细,,,,,
prop_2个纸铜钱,一对纸铜钱,,,[#texture=c03/2个纸铜钱.png],,
@ -136,10 +139,12 @@ prop_2013钥匙,2013钥匙,,,[#texture=c03/胖子的钥匙.png],,
prop_2013钥匙_说明,一把普通的房门钥匙,钥匙环上还挂着个小铃铛,,,,,
prop_药方,药方,,,[#texture=c03/药方.png][#inspect=c03/ux_药方.png],,
prop_药方_说明,发黄的纸张上写着密密麻麻的药名,字迹工整却略显潦草,,,,,
prop_符纸,符纸,,,[#texture=c03/符纸纸条.png][#inspect=c03/ux_符纸纸条.png],,
prop_符纸_说明,符纸说明,,,,,
prop_转轮,转轮,,,[#texture=c03/转轮.png],,
prop_转轮_说明,转轮说明,,,,,
prop_新鲜的肉,新鲜的肉,,,[#texture=c03/新鲜的肉.png],,
prop_新鲜的肉_说明,新鲜的肉说明,,,,,
prop_符纸钥匙,符纸钥匙,,,[#texture=c03/符纸钥匙.png][#inspect=c03/ux_符纸钥匙.png],,
prop_符纸钥匙_说明,符纸钥匙说明,,,,,
prop_院长的信,院长的信,,,[#texture=c01/院长的信物品.png][#inspect=c01/院长的信.png],,Director's Letter
prop_院长的信_说明,小萍:{br}你现下境况如何?{br}你虽离开浦育院已久,但我始终没有忘记为你祈祷。{br}愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。{br}你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。{br}若有闲暇,欢迎你回浦育院看看。{br}院长童玉君{br}民国二十一年十月十五日{br}公寓地址 芦昌路26弄3号,,,,,"Xiao Ping:{br}How are you faring now?{br}Though you left Puyu Orphanage long ago, I have never forgotten to pray for you.{br}May God bless you to walk the path of true enlightenment. I believe this was also your father's earnest wish when he entrusted you to my care.{br}Now that you are grown, regardless of whatever reasons your parents had for separating from you, you deserve the right to know the truth. I have attached the apartment address to this letter, though I know little beyond this.{br}If you have time, you are welcome to visit Puyu Orphanage.{br}Director Tong Yujun{br}October 15th, Year 21 of the Republic{br}Apartment Address: No. 3, Lane 26, Luchang Road"
prop_船票,船票,,,[#texture=c02/船票.png],,Boat Ticket
@ -154,6 +159,8 @@ prop_邀请信,邀请信,,,[#texture=c03/邀请信.png][#inspect=c03/ux_邀请
prop_邀请信_说明,邀请信说明,,,,,
prop_两个麻将,麻将,,,[#texture=c03/两个麻将.png],,
prop_两个麻将_说明,王守义出老千时用的麻将{br}我听说,那会儿赌场由黑帮控制,秩序混乱,赌徒设局被抓后,往往下场凄惨,只有极少数人能够全身而退。,,,,,
prop_符纸,符纸,,,[#texture=c03/符纸纸条.png][#inspect=c03/ux_符纸纸条.png],,
prop_符纸_说明,符纸说明,,,,,
prop_沾血的纸条,沾血的纸条,,,[#texture=c03/沾血的纸条.png][#inspect=c03/ux_沾血的纸条.png],,
prop_沾血的纸条_说明,文开,近日几条丘八又上门,娘仍未告诉他们你在何处,如今世道乱,苟活不耻,保命为上,盼望与儿早日重逢。,,,,,
c01_s05_检查院长房间,好像忘记了什么事情,再回去检查一遍吧。,,ID格式 prop_xx_说明,,,I feel like I've forgotten something. Let me go back and check again.
@ -171,7 +178,7 @@ c01_倾斜的洋相片,哇啊,这张洋相片要掉下来了!{br}我得做
c01_摆正的洋相片,这是院长的儿子吗?,,,,,Is this the director's son?
c01_s06_院长房间,这是院长的房间,,,,,This is the director's room
c01_s06_小朋友房间,这是其他小朋友的房间,,,,,This is the other children's room
c01_s06_熟悉的墙画,墙上的画看起来好熟悉。{br}过去问问看吧,没准他们几个知道些什么。,,,,,The painting on the wall looks so familiar.{br}Let me go ask them. Maybe they know something.
c01_s06_熟悉的墙画,又是他们几个,这次画的东西怎么有些眼熟{br} 虽然上次...{br}算了,院长和我说过,以后日子还长着呢,要和这里的小孩好好相处。,,,,,"It's them again. How come the things they drew look somewhat familiar? {br} Although last time... {br} Well, forget about that. The dean told me that there's still a long way ahead and we need to get along well with the kids here."
c01_s06_四小孩对话结束,怪人、花...{br}有时候真搞不懂他们在说些什么。,,,,,"Strange people, flowers...{br}Sometimes I really don't understand what they're talking about."
c01_s07_钱碗,碗里只有一枚铜钱。,,,,,There's only one copper coin in the bowl.
c01_s07_获得报纸,这是什么?,,,,,What is this?
@ -263,4 +270,6 @@ c03_抓药铜钱不足,钱还没准备够...牌子上讲需要三文,,,,,
c03_药方内容,生姜两片{br}竹叶十片去尖{br}经霜三年的甘蔗{br}蟋蟀一对 注:要原配,即本在一窠中者{br}金钱鼠尾辫一副 注:生剪 烧成灰兑水送服,,,,,
c03_s06_没贴的寻人启事,没贴的寻人启事,,,,,
c03_s08_囚室绳子,绑得很死,直接解不开绳子。,,,,,
c03_s08_囚室醒过来,?这里是,,,,,
c03_s08_囚室看到脚印,?又是脚印,,,,,
c03_s08_囚室符纸,妖物者,本自造化而生,具灵识,知求生,与万类本无别。人言有异,是以别之。,,,,,

1 keys zh_CN _character _notes _tags zh_SH en
24 setting_主播模式 主播模式 Streamer Mode
25 setting_返回 返回 Back
26 setting_确认 确认 Confirm
27 bag_tab_笔记 线索 线索(N) Clues Clues(N)
28 bag_tab_物品 物件 物件(B) Items Items(B)
29 bag_tab_记忆 记忆 记忆(M) Memories Memories(M)
30 ui_saved_all 已保存所有数据 All data saved
31 ui_new_archive 已创建新存档 New save file created
32 ui_auto_saved 自动保存成功 Auto save successful
33 ui_notify_important_item_update 重要物品已更新 Important items updated
34 ui_notify_note_update 线索笔记已更新 Clue notes updated
35 ui_notify_mem_update 回忆已更新 Memories updated
36 ui_center_notify_a_d_to_move 按 A/D 可左右移动 Press A/D to Move
37 ui_center_notify_press_e_to_interact 按 E 可与场景互动 Press E to interact
38 ui_center_notify_press_q_to_exit 按 Q 可退出 Press Q to exit
39 ui_center_notify_use_prop 按 E 使用道具 Press E to use item
ui_center_notify_lack_of_scissor 需要剪刀
40 ui_center_notify_check_note 按 N 查看线索笔记 Press N to check clue notes
41 ui_center_notify_check_bag 按 B 查看重要物品 Press B to check important items
42 ui_center_notify_right_click_prop 右键点击可检阅道具 Right-click to examine item
47 ui_boxcat_press_s 按住 S 躲藏 Hold S to hide
48 input_拼凑信件 点击选择信件碎片,方向键移动,E 旋碎片转,Q 退出 Click to select letter fragments, arrow keys to move, E to rotate, Q to exit
49 input_书架游戏 点击书本可选中或交换,Q 退出 Click books to select or swap, Q to exit
50 ui_center_notify_lack_of_scissor 需要剪刀
51 input_麻将游戏_麻将不足 还缺一块麻将
52 input_麻将整理游戏_开始方式 取出「三筒」开启整理
53 input_麻将游戏_交换规则 依次点击两块麻将可进行交换
59 ui_center_notify_c03放到碗中或原处 药材只能放到碗中或原处
60 ui_center_notify_c03碗口放入药材 从碗口处放入药材
61 ui_center_notify_c03准备研磨 已准备好研磨
62 ui_center_notify_c03绞肉机缺少转轮 缺少转轮,按 E 使用道具
63 ui_获得道具 获得道具 Item Obtained
64 ui_获得重要物品 重要物品
65 ui_退出 退出 Exit
66 ui_阅读 阅读 Read
67 ui_检阅 检阅 Examine
111 prop_一把香_说明 三炷细香捆成一束,香头微微发黑,散发着淡淡的檀木气息
112 prop_麻将2 麻将(二) [#texture=c03/麻将2.png][#inspect=c03/ux_麻将2.png]
113 prop_麻将2_说明 上面的幺鸡图是鸟和鸡的组合,幺字在南方的方言中有一的意思
114 prop_一碗浆糊 prop_浆糊 一碗浆糊 [#texture=c03/一碗浆糊.png][#inspect=c03/ux_一碗浆糊.png]
115 prop_一碗浆糊_说明 prop_浆糊_说明 用面粉调制的黏糊糊的浆液,表面已经结了一层薄膜
116 prop_纸舌头 纸舌头 [#texture=c03/下半部的舌头.png][#inspect=c03/ux_下半部的舌头.png]
117 prop_纸舌头_说明 用红纸剪成的舌头形状,边缘参差不齐,像是匆忙剪下的
118 prop_刀把 刀把 [#texture=c03/刀把.png][#inspect=c03/ux_刀把.png]
119 prop_刀把_说明 木质刀柄,表面磨得发亮,刀身不知去向
120 prop_剪下的辫子 prop_辫子 剪下的辫子 [#texture=c03/剪下的辫子.png][#inspect=c03/ux_剪下的辫子.png]
121 prop_剪下的辫子_说明 prop_辫子_说明 王守义的辫子,是他极其宝贝之物,油亮浓密,没生虱子
122 prop_纸铜钱1 纸铜钱 [#texture=c03/纸铜钱1.png][#inspect=c03/ux_纸铜钱1.png]
123 prop_纸铜钱1_说明 用黄纸剪成的圆形铜钱,中间有方孔,做工颇为精细
124 prop_2个纸铜钱 一对纸铜钱 [#texture=c03/2个纸铜钱.png]
139 prop_2013钥匙_说明 一把普通的房门钥匙,钥匙环上还挂着个小铃铛
140 prop_药方 药方 [#texture=c03/药方.png][#inspect=c03/ux_药方.png]
141 prop_药方_说明 发黄的纸张上写着密密麻麻的药名,字迹工整却略显潦草
prop_符纸 符纸 [#texture=c03/符纸纸条.png][#inspect=c03/ux_符纸纸条.png]
prop_符纸_说明 符纸说明
142 prop_转轮 转轮 [#texture=c03/转轮.png]
143 prop_转轮_说明 转轮说明
144 prop_新鲜的肉 新鲜的肉 [#texture=c03/新鲜的肉.png]
145 prop_新鲜的肉_说明 新鲜的肉说明
146 prop_符纸钥匙 符纸钥匙 [#texture=c03/符纸钥匙.png][#inspect=c03/ux_符纸钥匙.png]
147 prop_符纸钥匙_说明 符纸钥匙说明
148 prop_院长的信 院长的信 [#texture=c01/院长的信物品.png][#inspect=c01/院长的信.png] Director's Letter
149 prop_院长的信_说明 小萍:{br}你现下境况如何?{br}你虽离开浦育院已久,但我始终没有忘记为你祈祷。{br}愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。{br}你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。{br}若有闲暇,欢迎你回浦育院看看。{br}院长童玉君{br}民国二十一年十月十五日{br}公寓地址 芦昌路26弄3号 Xiao Ping:{br}How are you faring now?{br}Though you left Puyu Orphanage long ago, I have never forgotten to pray for you.{br}May God bless you to walk the path of true enlightenment. I believe this was also your father's earnest wish when he entrusted you to my care.{br}Now that you are grown, regardless of whatever reasons your parents had for separating from you, you deserve the right to know the truth. I have attached the apartment address to this letter, though I know little beyond this.{br}If you have time, you are welcome to visit Puyu Orphanage.{br}Director Tong Yujun{br}October 15th, Year 21 of the Republic{br}Apartment Address: No. 3, Lane 26, Luchang Road
150 prop_船票 船票 [#texture=c02/船票.png] Boat Ticket
159 prop_邀请信_说明 邀请信说明
160 prop_两个麻将 麻将 [#texture=c03/两个麻将.png]
161 prop_两个麻将_说明 王守义出老千时用的麻将{br}我听说,那会儿赌场由黑帮控制,秩序混乱,赌徒设局被抓后,往往下场凄惨,只有极少数人能够全身而退。
162 prop_符纸 符纸 [#texture=c03/符纸纸条.png][#inspect=c03/ux_符纸纸条.png]
163 prop_符纸_说明 符纸说明
164 prop_沾血的纸条 沾血的纸条 [#texture=c03/沾血的纸条.png][#inspect=c03/ux_沾血的纸条.png]
165 prop_沾血的纸条_说明 文开,近日几条丘八又上门,娘仍未告诉他们你在何处,如今世道乱,苟活不耻,保命为上,盼望与儿早日重逢。
166 c01_s05_检查院长房间 好像忘记了什么事情,再回去检查一遍吧。 ID格式: prop_xx_说明 I feel like I've forgotten something. Let me go back and check again.
178 c01_摆正的洋相片 这是院长的儿子吗? Is this the director's son?
179 c01_s06_院长房间 这是院长的房间 This is the director's room
180 c01_s06_小朋友房间 这是其他小朋友的房间 This is the other children's room
181 c01_s06_熟悉的墙画 墙上的画看起来好熟悉。{br}过去问问看吧,没准他们几个知道些什么。 又是他们几个,这次画的东西怎么有些眼熟{br} 虽然上次...{br}算了,院长和我说过,以后日子还长着呢,要和这里的小孩好好相处。 The painting on the wall looks so familiar.{br}Let me go ask them. Maybe they know something. It's them again. How come the things they drew look somewhat familiar? {br} Although last time... {br} Well, forget about that. The dean told me that there's still a long way ahead and we need to get along well with the kids here.
182 c01_s06_四小孩对话结束 怪人、花...{br}有时候真搞不懂他们在说些什么。 Strange people, flowers...{br}Sometimes I really don't understand what they're talking about.
183 c01_s07_钱碗 碗里只有一枚铜钱。 There's only one copper coin in the bowl.
184 c01_s07_获得报纸 这是什么? What is this?
270 c03_药方内容 生姜两片{br}竹叶十片去尖{br}经霜三年的甘蔗{br}蟋蟀一对 注:要原配,即本在一窠中者{br}金钱鼠尾辫一副 注:生剪 烧成灰兑水送服
271 c03_s06_没贴的寻人启事 没贴的寻人启事
272 c03_s08_囚室绳子 绑得很死,直接解不开绳子。
273 c03_s08_囚室醒过来 ?这里是
274 c03_s08_囚室看到脚印 ?又是脚印
275 c03_s08_囚室符纸 妖物者,本自造化而生,具灵识,知求生,与万类本无别。人言有异,是以别之。

View File

@ -27,9 +27,9 @@
返回[ID:setting_返回]
确认[ID:setting_确认]
线索[ID:bag_tab_笔记]
物件[ID:bag_tab_物品]
记忆[ID:bag_tab_记忆]
线索(N)[ID:bag_tab_笔记]
物件(B)[ID:bag_tab_物品]
记忆(M)[ID:bag_tab_记忆]
已保存所有数据 [ID:ui_saved_all]
已创建新存档 [ID:ui_new_archive]
@ -40,10 +40,10 @@
回忆已更新 [ID:ui_notify_mem_update]
按 A/D 可左右移动 [ID:ui_center_notify_a_d_to_move]
按 E 可与场景互动 [ID:ui_center_notify_press_e_to_interact]
按 Q 可退出 [ID:ui_center_notify_press_q_to_exit]
按 E 使用道具 [ID:ui_center_notify_use_prop]
需要剪刀 [ID:ui_center_notify_lack_of_scissor]
按 N 查看线索笔记 [ID:ui_center_notify_check_note]
按 B 查看重要物品 [ID:ui_center_notify_check_bag]
右键点击可检阅道具 [ID:ui_center_notify_right_click_prop]
@ -55,6 +55,7 @@
点击选择信件碎片方向键移动E 旋碎片转Q 退出 [ID:input_拼凑信件]
点击书本可选中或交换Q 退出 [ID:input_书架游戏]
# c03
需要剪刀 [ID:ui_center_notify_lack_of_scissor]
还缺一块麻将 [ID:input_麻将游戏_麻将不足]
取出「三筒」开启整理 [ID:input_麻将整理游戏_开始方式]
依次点击两块麻将可进行交换 [ID:input_麻将游戏_交换规则]
@ -132,14 +133,14 @@
三炷细香捆成一束,香头微微发黑,散发着淡淡的檀木气息 [ID:prop_一把香_说明]
麻将(二) [#texture=c03/麻将2.png] [#inspect=c03/ux_麻将2.png] [ID:prop_麻将2]
上面的幺鸡图是鸟和鸡的组合,幺字在南方的方言中有一的意思 [ID:prop_麻将2_说明]
一碗浆糊 [#texture=c03/一碗浆糊.png] [#inspect=c03/ux_一碗浆糊.png] [ID:prop_一碗浆糊]
用面粉调制的黏糊糊的浆液,表面已经结了一层薄膜 [ID:prop_一碗浆糊_说明]
一碗浆糊 [#texture=c03/一碗浆糊.png] [#inspect=c03/ux_一碗浆糊.png] [ID:prop_浆糊]
用面粉调制的黏糊糊的浆液,表面已经结了一层薄膜 [ID:prop_浆糊_说明]
纸舌头 [#texture=c03/下半部的舌头.png][#inspect=c03/ux_下半部的舌头.png] [ID:prop_纸舌头]
用红纸剪成的舌头形状,边缘参差不齐,像是匆忙剪下的 [ID:prop_纸舌头_说明]
刀把 [#texture=c03/刀把.png][#inspect=c03/ux_刀把.png] [ID:prop_刀把]
木质刀柄,表面磨得发亮,刀身不知去向 [ID:prop_刀把_说明]
剪下的辫子 [#texture=c03/剪下的辫子.png][#inspect=c03/ux_剪下的辫子.png] [ID:prop_剪下的辫子]
王守义的辫子,是他极其宝贝之物,油亮浓密,没生虱子 [ID:prop_剪下的辫子_说明]
剪下的辫子 [#texture=c03/剪下的辫子.png][#inspect=c03/ux_剪下的辫子.png] [ID:prop_辫子]
王守义的辫子,是他极其宝贝之物,油亮浓密,没生虱子 [ID:prop_辫子_说明]
纸铜钱 [#texture=c03/纸铜钱1.png][#inspect=c03/ux_纸铜钱1.png] [ID:prop_纸铜钱1]
用黄纸剪成的圆形铜钱,中间有方孔,做工颇为精细 [ID:prop_纸铜钱1_说明]
一对纸铜钱 [#texture=c03/2个纸铜钱.png] [ID:prop_2个纸铜钱]
@ -233,7 +234,7 @@
这是院长的房间 [ID:c01_s06_院长房间]
这是其他小朋友的房间 [ID:c01_s06_小朋友房间]
# 院子里四个小孩交谈结束后
墙上的画看起来好熟悉。{br}过去问问看吧,没准他们几个知道些什么。 [ID:c01_s06_熟悉的墙画]
又是他们几个,这次画的东西怎么有些眼熟{br} 虽然上次...{br}算了,院长和我说过,以后日子还长着呢,要和这里的小孩好好相处。[ID:c01_s06_熟悉的墙画]
怪人、花...{br}有时候真搞不懂他们在说些什么。 [ID:c01_s06_四小孩对话结束]
# c01-s07 书店外
碗里只有一枚铜钱。 [ID:c01_s07_钱碗]
@ -355,6 +356,8 @@
# s07 屠宰间
绑得很死,直接解不开绳子。 [ID:c03_s08_囚室绳子]
# s08 囚室
?这里是 [ID:c03_s08_囚室醒过来]
?又是脚印 [ID:c03_s08_囚室看到脚印]
妖物者,本自造化而生,具灵识,知求生,与万类本无别。人言有异,是以别之。 [ID:c03_s08_囚室符纸]
# s09 棺材房
=> END

View File

@ -3,3 +3,4 @@ extends Resource
class_name AudioStreamCollection
@export var audios : Array[AudioStream] = []
@export var db := 0

View File

@ -15,6 +15,7 @@ func play_random() -> void:
return
var audio_collection := audio_collections.pick_random() as AudioStreamCollection
stream = audio_collection.audios.pick_random()
volume_db = audio_collection.db
if stream == null:
push_error("empty stream in audio_collection", audio_collection)
return

View File

@ -9,3 +9,4 @@
[resource]
script = ExtResource("5_urhav")
audios = Array[AudioStream]([ExtResource("1_6m3uo"), ExtResource("2_e530w"), ExtResource("3_u6hi2"), ExtResource("4_cpnk0")])
db = 0

View File

@ -8,4 +8,5 @@
[resource]
script = ExtResource("1_xb1uk")
audios = Array[AudioStream]([ExtResource("1_2gs13"), ExtResource("2_rf711"), ExtResource("3_xgf5m")])
db = 0
metadata/_custom_type_script = "uid://bgxi2pq6x5d88"

View File

@ -8,3 +8,4 @@
[resource]
script = ExtResource("4_6irvv")
audios = Array[AudioStream]([ExtResource("1_pfw3x"), ExtResource("2_gcvrs"), ExtResource("3_0un37")])
db = -7.0

View File

@ -7,3 +7,4 @@
[resource]
script = ExtResource("3_ja105")
audios = Array[AudioStream]([ExtResource("1_tww7m"), ExtResource("3_05da2")])
db = -7.0

View File

@ -156,7 +156,7 @@ func _create_script():
if len(chapter) != 3 or len(section) != 3:
printerr("[Event2D] ground scene_name error: %s" % ground.scene_name)
return
var file_name = section + "_" + name.to_snake_case() + ".gd"
var file_name = section + "_" + name.replace("Event2D", "Event").to_snake_case() + ".gd"
var path = script_root_dir + chapter + "/" + file_name
if FileAccess.file_exists(path):
print("file exists, reattach the script to node: %s" % path)

View File

@ -8,7 +8,7 @@ class_name EventBinder extends Node
updater_event = val
if is_node_ready() and Engine.is_editor_hint():
_auto_memo()
@export_enum("enabler", "shower", "opener") var updater_mode := "enabler":
@export_enum("enabler", "unfreezer", "player", "shower", "opener") var updater_mode := "enabler":
set(val):
if updater_mode != val:
updater_mode = val
@ -121,6 +121,16 @@ func _update_binding_state(stage: int):
# check updater_mode
if updater_mode == "enabler":
parent.enabled = updater_status
elif updater_mode == "unfreezer":
parent.set("freezing", not updater_status)
elif updater_mode == "player":
if updater_status:
parent.play()
else:
if parent is Sfx2D:
parent.easing_kill()
else:
parent.stop()
elif updater_mode == "opener":
# open portal
parent.status = "opened" if updater_status else "locked"
@ -204,6 +214,10 @@ func _auto_memo() -> void:
memo_str += "显示"
elif updater_mode == "enabler":
memo_str += "启用"
elif updater_mode == "unfreezer":
memo_str += "解冻"
elif updater_mode == "player":
memo_str += "播放"
elif updater_mode == "opener":
memo_str += "打开"
else:

View File

@ -290,10 +290,10 @@ func pop_notification(translation_key: String, number := 1) -> void:
printerr("pop_notification: Notification node not found")
func pop_center_notification(translation_key: String) -> void:
func pop_center_notification(translation_key: String, duration := 4.0) -> void:
var notification_node = get_node_or_null("/root/Main/UILayer/Notification")
if notification_node:
notification_node.show_center_notification(tr(translation_key).replace("{br}", "\n"))
notification_node.show_center_notification(tr(translation_key).replace("{br}", "\n"), duration)
else:
printerr("pop_center_notification: Notification node not found")

View File

@ -23,8 +23,6 @@ var default_linear := 1.0
func _ready() -> void:
bus = &"game_sfx"
process_mode = Node.PROCESS_MODE_INHERIT
if Engine.is_editor_hint():
return
default_db = volume_db
default_linear = volume_linear
timer = Timer.new()
@ -34,6 +32,8 @@ func _ready() -> void:
timer.timeout.connect(_on_timer_timeout)
add_child(timer)
finished.connect(_on_finished)
if Engine.is_editor_hint():
return
# ground 退出时process mode 切换为 alwaysease out
SceneManager.ground_transition_pre_paused.connect(_on_ground_transition_pre_paused)
@ -70,6 +70,9 @@ func global_play() -> void:
func easing_kill(duration: float = 2.0) -> Tween:
timer.stop()
if not playing:
return
# stop with easing
var tween = create_tween()
tween.bind_node(self)
@ -91,4 +94,4 @@ func change_volumn_db(changed_volumn_db: float, duration := 1.0) -> void:
func reset_volumn_to_default(duration := 1.0) -> void:
var tween = create_tween()
tween.tween_property(self, "volume_linear", default_linear, duration)
tween.tween_property(self, "volume_linear", default_linear, duration)

View File

@ -50,6 +50,7 @@ var target_portal := "none":
@export var opened_texture: Texture2D
@export var unrevealed_sign_texture: Texture2D
@export var default_sign_texture: Texture2D
@export var default_sign_texture_r: Texture2D
@export var opened_sign_texture: Texture2D
@export var matched_sign_texture: Texture2D
@export var locked_sign_texture: Texture2D
@ -137,7 +138,10 @@ func _check_sign_mark_and_texture():
texture = default_texture
# 切换 sign_mark texture 同时设置 sign_snapper 的 action
if status == "default":
sign_mark.sprite2d.texture = default_sign_texture
if portal_name == "left":
sign_mark.sprite2d.texture = default_sign_texture
else:
sign_mark.sprite2d.texture = default_sign_texture_r
sign_snapper.action_on_arrived = 3
else:
sign_snapper.action_on_arrived = 4

View File

@ -1,10 +1,11 @@
[gd_scene load_steps=14 format=3 uid="uid://61pis75a8fdq"]
[gd_scene load_steps=15 format=3 uid="uid://61pis75a8fdq"]
[ext_resource type="Script" uid="uid://b2dvvhawm820r" path="res://scene/entity/portal.gd" id="1_jyh6v"]
[ext_resource type="Texture2D" uid="uid://bc4lpa8aao60n" path="res://asset/art/ui/action_mark/传送.png" id="2_ay30q"]
[ext_resource type="Texture2D" uid="uid://r0n7qy4kr3w2" path="res://asset/art/ui/action_mark/UI场景切换.png" id="2_bxihn"]
[ext_resource type="Texture2D" uid="uid://dtyg0nugb2tnf" path="res://asset/art/ui/action_mark/UI探索.png" id="2_fr7ak"]
[ext_resource type="Texture2D" uid="uid://bc8sn2v4t1yta" path="res://asset/art/ui/action_mark/UI开锁.png" id="3_fr7ak"]
[ext_resource type="Texture2D" uid="uid://cwbh3j84ctxvp" path="res://asset/art/ui/action_mark/UI场景切换_right.png" id="4_fr7ak"]
[ext_resource type="PackedScene" uid="uid://c4tipnj1cr1j3" path="res://scene/entity/ux/sign.tscn" id="4_ty1ds"]
[ext_resource type="AudioStream" uid="uid://ccng5y2fip6mc" path="res://asset/audio/sfx/UI/开锁声.ogg" id="5_l48hy"]
[ext_resource type="AudioStream" uid="uid://dqdjxy04ge0r5" path="res://asset/audio/sfx/旧版/c02/场景转场.ogg" id="6_1sj6c"]
@ -23,7 +24,8 @@ sign_mark_offset = Vector2(0, -50)
collision_width_and_x = Vector2(30, 0)
unrevealed_sign_texture = ExtResource("2_fr7ak")
default_sign_texture = ExtResource("2_bxihn")
opened_sign_texture = ExtResource("2_bxihn")
default_sign_texture_r = ExtResource("4_fr7ak")
opened_sign_texture = ExtResource("2_ay30q")
matched_sign_texture = ExtResource("3_fr7ak")
locked_sign_texture = ExtResource("3_fr7ak")
prop_key = ""

View File

@ -86,7 +86,6 @@ height = 0.5
[node name="FootstepAudioPlayer" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
volume_db = -5.0
bus = &"game_sfx"
script = ExtResource("5_7mb2q")
metadata/_custom_type_script = "uid://dpnny2y808k71"

View File

@ -54,7 +54,7 @@ func _on_ground_ready() -> void:
piano = $"../DeployLayer/钢琴"
if data["intro_played"]:
$"../DeployLayer/床".enabled = true
Util.timer(1.0, show_interact_help)
Util.timer(2.0, show_interact_help)
# 画框是否已经正位
data.frame_relocated = ambush.played and ambush.one_shot
# 禁用鸡毛掸子
@ -179,4 +179,7 @@ func _on_piano_interacted():
func show_interact_help():
SceneManager.pop_center_notification("ui_center_notify_a_d_to_move")
await Util.wait(5.0)
SceneManager.pop_center_notification("ui_center_notify_press_e_to_interact")

View File

@ -979,12 +979,6 @@ facing_direction = Vector2(1, 0)
[node name="AudioListener2D" type="AudioListener2D" parent="Ground/MainPlayer" index="6"]
current = true
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 564
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(21, 39)
texture = ExtResource("3_vmr0f")

View File

@ -672,10 +672,7 @@ character = "小小蝶"
player_movement_rect = Rect2(37, -158, 3963, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 5234
limit_bottom = 158
[node name="院长凳子" type="Sprite2D" parent="Ground/ParallaxForeground/BGParallaxLayer" index="0"]
position = Vector2(34, 3)

View File

@ -275,10 +275,7 @@ character = "小小蝶"
player_movement_rect = Rect2(37, -158, 2203, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 2270
limit_bottom = 158
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
points = PackedVector2Array(37, 150, 2240, 150)

View File

@ -359,7 +359,6 @@ character = "小小蝶"
player_movement_rect = Rect2(37, -158, 3423, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -165
limit_right = 3500
limit_bottom = 165

View File

@ -58,10 +58,7 @@ character = "小小蝶"
player_movement_rect = Rect2(18, -158, 653, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 701
limit_bottom = 158
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
points = PackedVector2Array(18, 150, 671, 150)

View File

@ -614,7 +614,6 @@ character = "小小蝶"
player_movement_rect = Rect2(37, -158, 11313, 316)
[node name="CameraFocusMarker" parent="Ground" index="6" node_paths=PackedStringArray("focusing_node")]
limit_left = 0
limit_top = -384
limit_right = 11377
limit_bottom = 384

View File

@ -323,10 +323,7 @@ character = "小小蝶"
player_movement_rect = Rect2(37, -158, 3013, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 3070
limit_bottom = 158
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
points = PackedVector2Array(37, 150, 3050, 150)

View File

@ -112,10 +112,7 @@ position = Vector2(78, 98)
player_movement_rect = Rect2(37, -158, 683, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 755
limit_bottom = 158
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
points = PackedVector2Array(37, 150, 720, 150)

View File

@ -125,7 +125,11 @@ func _display_paper_man(play_sfx := true):
# paper_man.enabled = true
if play_sfx:
paper_man.get_node("Sfx").play()
paper_man.get_node("wall/CollisionShape2D").disabled = false
# 第一章阻挡,第二章不阻挡并且左右镜像
if 2 <= EventManager.get_chapter_stage():
paper_man.flip_h = false
else:
paper_man.get_node("wall/CollisionShape2D").disabled = true
func _on_try_exit():

View File

@ -104,6 +104,7 @@ target_portal = "left"
[node name="InteractableLeftPortal" parent="Ground/DeployLayer" index="2" instance=ExtResource("13_ck13g")]
position = Vector2(28, -24)
action_key = 3
unrevealed_sign_texture = ExtResource("5_m1xet")
matched_sign_texture = ExtResource("5_m1xet")
one_shot = false

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=99 format=3 uid="uid://djc2uaefhmu7"]
[gd_scene load_steps=100 format=3 uid="uid://djc2uaefhmu7"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_0dylx"]
[ext_resource type="Script" uid="uid://dsp5plrdkrsd7" path="res://scene/ground/scene/c02/s03_院子.gd" id="2_dt5aj"]
@ -73,6 +73,7 @@
[ext_resource type="SpriteFrames" uid="uid://vadgcpixpkj1" path="res://asset/art/gif/c03_一楼胖李癞/c03_一楼胖李癞_frames.tres" id="66_deuom"]
[ext_resource type="Script" uid="uid://cphfob11f7atx" path="res://addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd" id="67_h2lyo"]
[ext_resource type="Script" uid="uid://cts4fvgir2lur" path="res://scene/ground/script/c02/s03_event_2d第二章结束井边演出.gd" id="72_18q2p"]
[ext_resource type="Script" uid="uid://bkkiyk5jkdw4d" path="res://manager/event_manager/event2d.gd" id="73_lt8c0"]
[sub_resource type="Animation" id="Animation_rt2lh"]
length = 0.001
@ -788,7 +789,7 @@ one_shot_max_times = 3
disable_prop_after_interacted = true
prop_key = "prop_3个纸铜钱"
prop_key2 = "prop_药方"
prop_key3 = "prop_剪下的辫子"
prop_key3 = "prop_辫子"
[node name="Closeup抓药游戏" parent="Ground/DeployLayer/Event2D抓药游戏/药车_老板" instance=ExtResource("23_81juy")]
position = Vector2(1058, 30)
@ -1206,7 +1207,7 @@ position = Vector2(1964, -209)
[node name="Pickable浆糊" parent="Ground/DeployLayer" index="36" instance=ExtResource("7_em2ma")]
position = Vector2(774, 64)
texture = ExtResource("64_deuom")
prop_key = "prop_一碗浆糊"
prop_key = "prop_浆糊"
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/Pickable浆糊"]
script = ExtResource("12_2b6vx")
@ -1303,6 +1304,45 @@ animation = &"小婵呼吸"
script = ExtResource("67_h2lyo")
metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="Event2D第二章_纸人" type="Node2D" parent="Ground/DeployLayer" index="39"]
script = ExtResource("73_lt8c0")
event_name = &"current_chapter_stage"
event_stages = Array[int]([3])
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
[node name="排队常人" type="Sprite2D" parent="Ground/DeployLayer/Event2D第二章_纸人"]
visible = false
light_mask = 5
z_index = 4
position = Vector2(1227.5, -119)
texture = ExtResource("18_crgo6")
centered = false
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/Event2D第二章_纸人/排队常人"]
script = ExtResource("12_2b6vx")
updater_event = &"c03_drug_game"
updater_mode = "shower"
updater_ease_duration = 0.0
updater_stages = Array[int]([0])
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="排队纸人" type="Sprite2D" parent="Ground/DeployLayer/Event2D第二章_纸人"]
visible = false
light_mask = 5
z_index = 4
position = Vector2(1227.5, -119)
texture = ExtResource("19_vddfx")
centered = false
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/Event2D第二章_纸人/排队纸人"]
script = ExtResource("12_2b6vx")
updater_event = &"c03_drug_game"
updater_mode = "shower"
updater_ease_duration = 0.0
updater_stage_mode = "exclude"
updater_stages = Array[int]([0])
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="PointLight2D" type="PointLight2D" parent="Ground/AmbientLayer" index="0"]
light_mask = 4
position = Vector2(2189, -142)

View File

@ -219,10 +219,7 @@ player_movement_rect = Rect2(37, -158, 2213, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 2380
limit_bottom = 158
[node name="FGParallaxLayer" parent="Ground/ParallaxForeground" index="1"]
visible = false

View File

@ -63,10 +63,6 @@ player_movement_rect = Rect2(37, -158, 363, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 564
limit_bottom = 158
force_offset = Vector2(-20, 0)
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]

View File

@ -120,10 +120,7 @@ character = "盒子猫"
player_movement_rect = Rect2(37, -158, 833, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 903
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(-1, -16)

View File

@ -61,10 +61,7 @@ character = "盒子猫"
player_movement_rect = Rect2(101, -158, 559, 316)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 696
limit_bottom = 158
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
points = PackedVector2Array(101, 150, 660, 150)

View File

@ -55,10 +55,7 @@ player_movement_rect = Rect2(125, -158, 535, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 696
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(-1, -15)

View File

@ -67,10 +67,7 @@ player_movement_rect = Rect2(37, -158, 618, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 696
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(3584, -7)

View File

@ -70,10 +70,7 @@ player_movement_rect = Rect2(26, -158, 842, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 903
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(3584, -7)

View File

@ -84,10 +84,7 @@ player_movement_rect = Rect2(37, -158, 823, 316)
facing_direction = Vector2(1, 0)
[node name="CameraFocusMarker" parent="Ground" index="6"]
limit_left = 0
limit_top = -158
limit_right = 903
limit_bottom = 158
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
position = Vector2(3584, -7)

View File

@ -43,7 +43,6 @@ func _on_ground_ready() -> void:
.lighted.connect(_gaslight_up, CONNECT_ONE_SHOT)
else:
closeup洋糕点.enabled = true
if ambush小猫挠墙.played:
ambush小猫挠墙.visible = false
pickable李癞钥匙.visible = true

View File

@ -1,9 +1,10 @@
[gd_scene load_steps=37 format=3 uid="uid://ctwy1ubhm68la"]
[gd_scene load_steps=38 format=3 uid="uid://ctwy1ubhm68la"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_jad6f"]
[ext_resource type="Script" uid="uid://tk4wg0i4payx" path="res://scene/ground/scene/c03/s02_瞎子新卧室.gd" id="2_y504i"]
[ext_resource type="AudioStream" uid="uid://6gttowdwmado" path="res://asset/audio/sfx/环境音/第一章/房间内部场景1.ogg" id="3_5cqb4"]
[ext_resource type="Texture2D" uid="uid://vc2hn6t5bedg" path="res://asset/art/scene/c03/s02_瞎子新卧室/bg_瞎子新卧室.png" id="4_hehhg"]
[ext_resource type="AudioStream" uid="uid://d3yc0gbgivrjb" path="res://asset/audio/sfx/交互/第二章/sfx瞎子卧室灰姑.ogg" id="5_5cqb4"]
[ext_resource type="Texture2D" uid="uid://7ay1ttob8qwm" path="res://asset/art/scene/c02/s08_瞎子卧室/e_床板.png" id="5_xifhb"]
[ext_resource type="Texture2D" uid="uid://bgtxwxerl2dxh" path="res://asset/art/scene/c02/s08_瞎子卧室/十字架.png" id="6_hehhg"]
[ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="6_jad6f"]
@ -329,7 +330,8 @@ sprite_frames = ExtResource("10_2hv3f")
animation = &"姑散开"
autoplay = "姑呼吸帧"
[node name="Sfx老鼠精" type="AudioStreamPlayer" parent="Ground/DeployLayer/Event2D偷听陆仁对话后"]
[node name="Sfx灰姑出场" type="AudioStreamPlayer" parent="Ground/DeployLayer/Event2D偷听陆仁对话后"]
stream = ExtResource("5_5cqb4")
bus = &"game_sfx"
script = ExtResource("23_qq2pn")
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"

View File

@ -1,14 +1,17 @@
[gd_scene load_steps=23 format=3 uid="uid://bsqt2c061fmin"]
[gd_scene load_steps=26 format=3 uid="uid://bsqt2c061fmin"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_40yjl"]
[ext_resource type="Script" uid="uid://cim5bqm2nayls" path="res://scene/ground/scene/c03/s03_瞎子理发店.gd" id="2_irgvj"]
[ext_resource type="AudioStream" uid="uid://b2mudqvq1dmng" path="res://asset/audio/sfx/环境音/白噪音/白噪声房间里1.ogg" id="3_o1s27"]
[ext_resource type="Texture2D" uid="uid://lglbxvvwsybj" path="res://asset/art/scene/c03/s03_瞎子理发店/bg_瞎子理发店.png" id="4_40yjl"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_ikkg3"]
[ext_resource type="PackedScene" uid="uid://bq1ngudr2hnkg" path="res://scene/entity/audio/sfx2d.tscn" id="5_cdaxx"]
[ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="5_d40x1"]
[ext_resource type="Texture2D" uid="uid://7ujobcsjdm4r" path="res://asset/art/scene/c03/s03_瞎子理发店/fg_理发店前景.png" id="5_irgvj"]
[ext_resource type="PackedScene" uid="uid://bnoqhovb0wjem" path="res://scene/ground/script/c03/s03_closeup镜子特写.tscn" id="6_j7tjd"]
[ext_resource type="AudioStream" uid="uid://mff0udi3glb4" path="res://asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.ogg" id="6_xevnq"]
[ext_resource type="Texture2D" uid="uid://0p78wjtm30rm" path="res://asset/art/scene/c03/s03_瞎子理发店/e_理发店剪贴画报.png" id="7_dcuy3"]
[ext_resource type="Script" uid="uid://0wjaho6qkg6s" path="res://manager/event_manager/event_binder.gd" id="7_xevnq"]
[ext_resource type="PackedScene" uid="uid://dohvkxfdmcrw4" path="res://scene/ground/script/c03/s03_刮海报_理发店.tscn" id="8_xtr6o"]
[ext_resource type="PackedScene" uid="uid://d320nw5yrmvjo" path="res://scene/ground/script/c03/s03_closeup癞子纸人.tscn" id="9_4imwu"]
[ext_resource type="Texture2D" uid="uid://bv5vcrdqwtlm3" path="res://asset/art/scene/c03/s03_瞎子理发店/癞子纸人.png" id="9_bdtls"]
@ -48,6 +51,21 @@ mode = "场景背景音"
"感应玩家操作" = false
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="Sfx2d癞子呼吸声" parent="Ground/AnimationPlayer" index="1" instance=ExtResource("5_cdaxx")]
position = Vector2(343, 42)
stream = ExtResource("6_xevnq")
volume_db = -4.0
max_distance = 1000.0
attenuation = 3.0
loop = true
[node name="EventBinder" type="Node" parent="Ground/AnimationPlayer/Sfx2d癞子呼吸声"]
script = ExtResource("7_xevnq")
updater_event = &"c03_s03_laizi_breath"
updater_mode = "player"
updater_stages = Array[int]([0])
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="BGSprite2D" parent="Ground" index="2"]
light_mask = 5
position = Vector2(9, 0)
@ -189,6 +207,7 @@ offset = Vector2(0, -11)
points = PackedVector2Array(35, 151, 541, 151)
[node name="DirectionalLight2D" parent="Ground" index="8"]
visible = false
energy = 0.85
blend_mode = 1

View File

@ -14,7 +14,6 @@ func _ready() -> void:
#region node_reference
var pickable药方: Pickable2D
var closeup李氏纸人: Closeup2D
var closeup麻将出千游戏: Closeup2D
var closeup整理麻将游戏: Closeup2D
@ -23,7 +22,6 @@ var closeup整理麻将游戏: Closeup2D
# 读取设置变量名
func _setup_node_reference() -> void:
pickable药方 = $"../DeployLayer/Pickable药方"
closeup李氏纸人 = $"../DeployLayer/Closeup李氏纸人"
closeup麻将出千游戏 = $"../DeployLayer/Closeup麻将出千游戏"
closeup整理麻将游戏 = $"../DeployLayer/Closeup整理麻将游戏"
@ -41,11 +39,6 @@ func _on_ground_ready() -> void:
SceneManager.toggle_hud_display(false)
closeup整理麻将游戏.exit.connect(_on_exit_sort_mahjong_game)
closeup麻将出千游戏.exit.connect(_on_exit_cheat_mahjong_game)
pickable药方.triggered.connect(_on_spec_picked, CONNECT_ONE_SHOT)
func _on_spec_picked() -> void:
EventManager.set_stage("c03_drug_game", 1)
func _on_exit_sort_mahjong_game(arg) -> void:
@ -61,3 +54,8 @@ func _on_exit_cheat_mahjong_game(arg) -> void:
EventManager.set_stage_if_greater("c03_mahjong_game", 3)
EventManager.set_stage_if_greater("c03_li_paperwoman", 1)
closeup麻将出千游戏.enabled = false
# 招魂幡
func on_spirit_flag_interacted() -> void:
$"../DeployLayer/Event李氏纸人相关/招魂幡".play()
$"Sfx招魂幡".play(2.3)

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=27 format=3 uid="uid://c7c88hg2cl1j7"]
[gd_scene load_steps=30 format=3 uid="uid://c7c88hg2cl1j7"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_byh4s"]
[ext_resource type="Script" uid="uid://byw2swgt783oa" path="res://scene/ground/scene/c03/s04_李癞房间.gd" id="2_vjibx"]
@ -7,22 +7,25 @@
[ext_resource type="Script" uid="uid://0wjaho6qkg6s" path="res://manager/event_manager/event_binder.gd" id="4_35fjj"]
[ext_resource type="Texture2D" uid="uid://08xrgv7s4m4b" path="res://asset/art/scene/c03/s04_李癞房间/bg_癞子房间.png" id="4_byh4s"]
[ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="5_4efpk"]
[ext_resource type="AudioStream" uid="uid://c68e38rel4xrs" path="res://asset/audio/sfx/交互/序章/sfx_鬼差出场.ogg" id="5_7jj1o"]
[ext_resource type="Texture2D" uid="uid://bdtccpvbl7e7b" path="res://asset/art/scene/c03/s04_李癞房间/fg_李癞房间前景.png" id="5_vjibx"]
[ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="6_dbkw8"]
[ext_resource type="PackedScene" uid="uid://n75766ui6udi" path="res://scene/ground/script/c03/s04_closeup整理麻将游戏.tscn" id="7_jmyby"]
[ext_resource type="PackedScene" uid="uid://cua3uqy4btxqn" path="res://scene/ground/script/c03/s04_closeup麻将出千游戏.tscn" id="8_jmyby"]
[ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="9_m8bf2"]
[ext_resource type="PackedScene" uid="uid://t61o0vpm0e11" path="res://scene/ground/script/c03/s04_closeup李氏纸人.tscn" id="10_o2w5q"]
[ext_resource type="Script" uid="uid://bbfyvhhhcdet8" path="res://scene/ground/script/c03/s04_event_2d香炉.gd" id="11_4umel"]
[ext_resource type="Script" uid="uid://bbfyvhhhcdet8" path="res://scene/ground/script/c03/s04_event_李氏纸人相关.gd" id="11_4umel"]
[ext_resource type="Texture2D" uid="uid://p7eeml2vadvc" path="res://asset/art/scene/c03/s04_李癞房间/李氏纸人.png" id="11_7d7lv"]
[ext_resource type="Texture2D" uid="uid://cwrq3g5rd5i3t" path="res://asset/art/scene/c03/s04_李癞房间/花圈_无支撑.png" id="12_r0k7c"]
[ext_resource type="SpriteFrames" uid="uid://cmvr3lbwe3h7p" path="res://asset/art/gif/c03_特写与游戏动画/c03_特写与游戏动画_frames.tres" id="14_27fnr"]
[ext_resource type="Texture2D" uid="uid://c1o30ess5p0ev" path="res://asset/art/scene/c03/s04_李癞房间/纸钱.png" id="14_ueha8"]
[ext_resource type="Texture2D" uid="uid://wtifvyytbb4t" path="res://asset/art/scene/c03/s04_李癞房间/招魂幡静态.png" id="15_r0k7c"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="14_vgq24"]
[ext_resource type="Texture2D" uid="uid://diimwy2vwda4i" path="res://asset/art/scene/c03/s04_李癞房间/丧事柜子部件.png" id="16_4umel"]
[ext_resource type="PackedScene" uid="uid://bq1ngudr2hnkg" path="res://scene/entity/audio/sfx2d.tscn" id="16_drhpr"]
[ext_resource type="AudioStream" uid="uid://qvy062jtmtbn" path="res://asset/audio/mixkit/mixkit-man-coughing-2224.ogg" id="17_tk48j"]
[ext_resource type="AudioStream" uid="uid://copg4yfv32fgn" path="res://asset/audio/mixkit/mixkit-man-coughing-loud-2222.ogg" id="18_q7jtk"]
[ext_resource type="AudioStream" uid="uid://cvp1j6211ghtj" path="res://asset/audio/mixkit/mixkit-sick-male-cough-2225.ogg" id="19_27fnr"]
[ext_resource type="AudioStream" uid="uid://bkbs5hwxuou4r" path="res://asset/audio/sfx/交互/第二章/李氏纸人呼吸.ogg" id="20_27fnr"]
[ext_resource type="PackedScene" uid="uid://b6ymfeft65wof" path="res://scene/ground/script/c03/s04_closeup柜子.tscn" id="23_q7jtk"]
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
@ -57,6 +60,12 @@ mode = "场景背景音"
"感应玩家操作" = false
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="Sfx招魂幡" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
stream = ExtResource("5_7jj1o")
bus = &"game_sfx"
script = ExtResource("4_0jb1q")
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="BGSprite2D" parent="Ground" index="2"]
light_mask = 5
texture = ExtResource("4_byh4s")
@ -94,33 +103,41 @@ enabled = false
position = Vector2(537, 55)
prop_key = "prop_2013钥匙"
[node name="Event2D给药完成" type="Node2D" parent="Ground/DeployLayer" index="6"]
[node name="Event李氏纸人相关" type="Node2D" parent="Ground/DeployLayer" index="6"]
script = ExtResource("11_4umel")
event_name = &"c03_li_paperwoman"
event_stages = Array[int]([3])
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
[node name="Pickable香" parent="Ground/DeployLayer/Event2D给药完成" instance=ExtResource("9_m8bf2")]
position = Vector2(62, 31)
[node name="Pickable香" parent="Ground/DeployLayer/Event李氏纸人相关" instance=ExtResource("9_m8bf2")]
position = Vector2(47, 29)
prop_key = "prop_一把香"
[node name="花圈" type="Sprite2D" parent="Ground/DeployLayer/Event2D给药完成"]
[node name="花圈" type="Sprite2D" parent="Ground/DeployLayer/Event李氏纸人相关"]
position = Vector2(404, -33)
texture = ExtResource("12_r0k7c")
[node name="纸钱" type="Sprite2D" parent="Ground/DeployLayer/Event2D给药完成"]
[node name="纸钱" type="Sprite2D" parent="Ground/DeployLayer/Event李氏纸人相关"]
position = Vector2(316, 105)
texture = ExtResource("14_ueha8")
[node name="招魂幡静态" type="Sprite2D" parent="Ground/DeployLayer/Event2D给药完成"]
position = Vector2(191, 10)
texture = ExtResource("15_r0k7c")
[node name="招魂幡" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event李氏纸人相关"]
position = Vector2(183, 10)
sprite_frames = ExtResource("14_27fnr")
animation = &"招魂幡"
[node name="丧事柜子部件" type="Sprite2D" parent="Ground/DeployLayer/Event2D给药完成"]
[node name="Ambush招魂幡" parent="Ground/DeployLayer/Event李氏纸人相关/招魂幡" instance=ExtResource("14_vgq24")]
position = Vector2(10, 19)
trigger_mode = "interact"
one_shot = false
cooldown_time = 2.0
hook_method = "on_spirit_flag_interacted"
[node name="丧事柜子部件" type="Sprite2D" parent="Ground/DeployLayer/Event李氏纸人相关"]
position = Vector2(64, 46)
texture = ExtResource("16_4umel")
[node name="Sfx2d咳嗽声" parent="Ground/DeployLayer/Event2D给药完成" instance=ExtResource("16_drhpr")]
[node name="Sfx2d咳嗽声" parent="Ground/DeployLayer/Event李氏纸人相关" instance=ExtResource("16_drhpr")]
position = Vector2(-16, 17)
stream = SubResource("AudioStreamRandomizer_vgq24")
volume_db = -4.0
@ -130,6 +147,15 @@ attenuation = 3.0
loop = true
loop_round_time = 10.0
[node name="Sfx2d纸人呼吸声" parent="Ground/DeployLayer/Event李氏纸人相关" instance=ExtResource("16_drhpr")]
position = Vector2(372, 18)
stream = ExtResource("20_27fnr")
volume_db = 10.0
autoplay = false
max_distance = 1000.0
attenuation = 3.0
loop = true
[node name="Closeup李氏纸人" parent="Ground/DeployLayer" index="7" instance=ExtResource("6_dbkw8")]
unique_name_in_owner = true
position = Vector2(372, 40)
@ -143,17 +169,12 @@ updater_event = &"c03_li_paperwoman"
updater_mode = "shower"
updater_ease_duration = 0.0
updater_stage_mode = "exclude"
updater_stages = Array[int]([0, 3])
updater_stages = Array[int]([0])
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="Pickable药方" parent="Ground/DeployLayer" index="8" instance=ExtResource("9_m8bf2")]
[node name="Closeup柜子" parent="Ground/DeployLayer" index="8" instance=ExtResource("6_dbkw8")]
unique_name_in_owner = true
position = Vector2(76, 42)
prop_key = "prop_药方"
[node name="Closeup柜子" parent="Ground/DeployLayer" index="9" instance=ExtResource("6_dbkw8")]
unique_name_in_owner = true
position = Vector2(104, 41)
position = Vector2(64, 45)
packed_scene = ExtResource("23_q7jtk")
sign_mark_offset = Vector2(0, -11.02)

View File

@ -14,17 +14,54 @@ func _ready() -> void:
#region node_reference
var ambush偷听门板: Ambush2D
var pickable新鲜的肉: Pickable2D
var bloody_footstep: AnimatedSprite2D
#endregion
# 读取设置变量名
func _setup_node_reference() -> void:
pass
ambush偷听门板 = $"../DeployLayer/Ambush偷听门板"
pickable新鲜的肉 = $"../DeployLayer/Pickable新鲜的肉"
bloody_footstep = $"../DeployLayer/血脚印"
func _on_ground_ready() -> void:
pass
# TODO 血脚印 小蝉给钥匙
# 之后 Ambush偷听门板 附近出现轻微敲门声
# 启用 Ambush偷听门板
pickable新鲜的肉.triggered.connect(_on_meat_picked)
if pickable新鲜的肉.picked:
bloody_footstep.frame = 8
_post_meat_picked()
func _on_meat_picked() -> void:
# 小蝉给钥匙,先静默给,再真给
SceneManager.enable_prop_item_silently("prop_符纸钥匙")
SceneManager.lock_player()
await SceneManager.get_inspector().quit_and_hidden
bloody_footstep.play()
SceneManager.pop_debug_dialog_info("音效", "小蝉血脚印出现,给钥匙")
$"Sfx小蝉给钥匙".play()
await bloody_footstep.animation_finished
var xchan = $"../DeployLayer/小蝉给钥匙" as AnimatedSprite2D
var tween = create_tween()
tween.tween_property(xchan, "modulate:a", 1.0, 1.0)
tween.tween_callback(xchan.play)
tween.tween_callback(SceneManager.get_player().set_facing_direction.bind(Vector2.LEFT))
await xchan.animation_finished
tween = create_tween()
tween.tween_property(xchan, "modulate:a", 0.0, 1.0)
SceneManager.enable_prop_item("prop_符纸钥匙")
SceneManager.unlock_player()
_post_meat_picked()
func _post_meat_picked() -> void:
# 血脚印 小蝉给钥匙 后 Ambush偷听门板 附近出现轻微敲门声
ambush偷听门板.enabled = true
if not ambush偷听门板.played:
$"Sfx门板敲门声".play()
func eavesdrop_plank() -> void:
$"Sfx门板敲门声".easing_kill()

View File

@ -1,15 +1,21 @@
[gd_scene load_steps=23 format=3 uid="uid://6ehb3ux2kilu"]
[gd_scene load_steps=30 format=3 uid="uid://6ehb3ux2kilu"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_ip0og"]
[ext_resource type="Script" uid="uid://brncw0d41f427" path="res://scene/ground/scene/c03/s05_肉铺.gd" id="2_l22xv"]
[ext_resource type="AudioStream" uid="uid://b2mudqvq1dmng" path="res://asset/audio/sfx/环境音/白噪音/白噪声房间里1.ogg" id="3_l22xv"]
[ext_resource type="Texture2D" uid="uid://ccl8ud5hbuq1r" path="res://asset/art/scene/c03/s05_肉铺/bg_肉铺内背景.png" id="4_ip0og"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_r4bhp"]
[ext_resource type="AudioStream" uid="uid://dfni8aakmmp00" path="res://asset/audio/sfx/旧版/c02/红色印记出现.ogg" id="5_cbx3n"]
[ext_resource type="Texture2D" uid="uid://c5oth3mdxrnby" path="res://asset/art/scene/c03/s05_肉铺/fg_肉铺内前景.png" id="5_l22xv"]
[ext_resource type="AudioStream" uid="uid://yujyahxjawp4" path="res://asset/audio/effect/impact/impactPlank_medium_000.ogg" id="6_pw825"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="6_r4bhp"]
[ext_resource type="Script" uid="uid://wapo47a1oddf" path="res://scene/entity/audio/sfx2d.gd" id="6_trckl"]
[ext_resource type="AudioStream" uid="uid://cv5yskhl1gsch" path="res://asset/audio/effect/impact/impactPlank_medium_001.ogg" id="7_rb4r8"]
[ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="7_vtje3"]
[ext_resource type="PackedScene" uid="uid://iacb6tfxwbhc" path="res://scene/ground/script/c03/s05_closeup肉铺账簿.tscn" id="8_12how"]
[ext_resource type="AudioStream" uid="uid://bbe0mq32pms3v" path="res://asset/audio/effect/impact/impactPlank_medium_002.ogg" id="8_31dsv"]
[ext_resource type="Texture2D" uid="uid://b68xl7547rkqr" path="res://asset/art/scene/c03/s05_肉铺/账簿.png" id="8_mv54a"]
[ext_resource type="AudioStream" uid="uid://bisi1i5u4yyql" path="res://asset/audio/effect/impact/impactPlank_medium_003.ogg" id="9_ic4up"]
[ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="10_ma57s"]
[ext_resource type="SpriteFrames" uid="uid://cwes55ajc3rd4" path="res://asset/art/gif/c02_空房间/c02_空房间_frames.tres" id="11_5dpcv"]
[ext_resource type="Texture2D" uid="uid://baijw7fcllwlf" path="res://asset/art/scene/c03/s05_肉铺/角落的血迹.png" id="11_y1pbi"]
@ -19,6 +25,13 @@
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_n65gt"]
streams_count = 4
stream_0/stream = ExtResource("6_pw825")
stream_1/stream = ExtResource("7_rb4r8")
stream_2/stream = ExtResource("8_31dsv")
stream_3/stream = ExtResource("9_ic4up")
[sub_resource type="AtlasTexture" id="AtlasTexture_chbaa"]
atlas = ExtResource("13_rt6kj")
region = Rect2(0, 0, 6, 14)
@ -79,6 +92,22 @@ mode = "场景背景音"
"感应玩家操作" = false
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="Sfx小蝉给钥匙" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
stream = ExtResource("5_cbx3n")
bus = &"game_sfx"
script = ExtResource("4_r4bhp")
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="Sfx门板敲门声" type="AudioStreamPlayer2D" parent="Ground/AnimationPlayer" index="2"]
position = Vector2(362, 23)
stream = SubResource("AudioStreamRandomizer_n65gt")
volume_db = -10.0
bus = &"game_sfx"
script = ExtResource("6_trckl")
loop = true
loop_round_time = 0.7
metadata/_custom_type_script = "uid://wapo47a1oddf"
[node name="BGSprite2D" parent="Ground" index="2"]
light_mask = 5
position = Vector2(8.5, 0)
@ -99,12 +128,14 @@ target_portal = "left"
status = "opened"
[node name="Ambush偷听门板" parent="Ground/DeployLayer" index="2" instance=ExtResource("6_r4bhp")]
unique_name_in_owner = true
position = Vector2(363, 40)
enabled = false
trigger_mode = "interact"
collision_width_and_x = Vector2(48.8, 0)
hook_dialogue_res = "c03"
hook_dialogue_title = "c03_s05_肉铺隔门板偷听"
hook_method = "eavesdrop_plank"
[node name="Closeup肉铺账簿" parent="Ground/DeployLayer" index="3" instance=ExtResource("7_vtje3")]
position = Vector2(424, 41)
@ -114,6 +145,7 @@ on_display_hide_hud = true
sign_mark_offset = Vector2(-2.6, -7.28)
[node name="Pickable新鲜的肉" parent="Ground/DeployLayer" index="4" instance=ExtResource("10_ma57s")]
unique_name_in_owner = true
position = Vector2(220, 37)
prop_key = "prop_新鲜的肉"
@ -126,8 +158,6 @@ flip_h = true
position = Vector2(116, 39)
sprite_frames = ExtResource("11_5dpcv")
animation = &"空房间血脚印"
frame = 8
frame_progress = 1.0
flip_h = true
[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="7"]
@ -145,7 +175,7 @@ texture = ExtResource("14_cbx3n")
texture_scale = 0.3
[node name="小蝉给钥匙" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="9"]
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
modulate = Color(1, 1, 1, 0)
position = Vector2(41, 54)
sprite_frames = ExtResource("15_rt6kj")
animation = &"c03_小婵_give_抬手"

View File

@ -26,7 +26,10 @@ func _setup_node_reference() -> void:
func _on_ground_ready() -> void:
closeup绞肉机.exit.connect(_on_grinder_exited)
# c03_meat_grinder: 0:初始化 1:已装转盘 2:绞肉机演出 3:演出结束
if EventManager.get_stage("c03_meat_grinder") == 2:
var grinder_stage = EventManager.get_stage("c03_meat_grinder")
if grinder_stage == 1:
_setup_monster()
elif grinder_stage == 2:
# 进入演出
var portal_2_x = $"../DeployLayer/portal_2".global_position.x
SceneManager.get_player().global_position.x = portal_2_x
@ -40,12 +43,17 @@ func _on_grinder_exited(_arg) -> void:
await Util.wait(1.0)
SceneManager.dizzy_effect(3.0)
SceneManager.player_action(17, true)
Util.timer(1.0, _setup_monster)
await SceneManager.get_player().animation_finished
var monster = $"../DeployLayer/棺材怪切肉"
monster.show()
monster.play()
await Util.wait(3.0)
SceneManager.unlock_player()
SceneManager.get_ground_loader().transition_to_scene("c03_s10", "left")
func _setup_monster() -> void:
var monster = $"../DeployLayer/棺材怪切肉"
monster.show()
monster.play()
func _grinder_show() -> void:

View File

@ -78,7 +78,7 @@ status = "locked"
prop_key = "prop_符纸钥匙"
[node name="portal_2" parent="Ground/DeployLayer" index="3" instance=ExtResource("6_t8dkf")]
position = Vector2(316, 34)
position = Vector2(419, 34)
debug_note = "胖子游戏结束,回到绞肉机前"
portal_name = "2"
@ -127,10 +127,8 @@ metadata/_custom_type_script = "uid://dt8cfnm2og4h"
[node name="Closeup绞肉机" parent="Ground/DeployLayer" index="7" instance=ExtResource("14_48a3r")]
unique_name_in_owner = true
position = Vector2(316, 21)
position = Vector2(419, 21)
packed_scene = ExtResource("15_48a3r")
quit_closeup_on_cancel = false
on_display_hide_hud = null
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/Closeup绞肉机"]
script = ExtResource("17_e1lvl")

View File

@ -14,6 +14,9 @@ func _ready() -> void:
#region node_reference
var ambush血脚印: Ambush2D
var pickable转轮: Pickable2D
var interactable囚室尸体: Interactable2D
var closeup符纸: Closeup2D
var interactable_body: Interactable2D
var body_sprite: AnimatedSprite2D
@ -23,6 +26,9 @@ var closeup囚室门锁: Closeup2D
# 读取设置变量名
func _setup_node_reference() -> void:
ambush血脚印 = $"../DeployLayer/Ambush血脚印"
pickable转轮 = $"../DeployLayer/Interactable囚室尸体/Pickable转轮"
interactable囚室尸体 = $"../DeployLayer/Interactable囚室尸体"
closeup符纸 = $"../DeployLayer/Closeup符纸"
interactable_body = $"../DeployLayer/Interactable囚室尸体"
body_sprite = $"../DeployLayer/Interactable囚室尸体/尸体动画"
@ -36,6 +42,8 @@ func _on_ground_ready() -> void:
closeup符纸.show()
if interactable_body.interacted_times > 0:
body_sprite.frame = 3
if ambush血脚印.played:
ambush血脚印.get_node("血脚印").frame = 8
_check_first_enter()
@ -51,6 +59,7 @@ func _check_first_enter() -> void:
await Util.wait(3.0)
# c02_吕萍_背靠起身
await player.player_action(19, true)
await SceneManager.pop_os_with_str("c03_s08_囚室醒过来")
set_data("has_entered", true)
SceneManager.unlock_player()
@ -69,3 +78,11 @@ func _on_body_interacted(success: bool) -> void:
SceneManager.unlock_player()
# SceneManager.enable_prop_item("prop_转轮")
# await SceneManager.get_inspector().quit_and_hidden
func play_footstep() -> void:
SceneManager.lock_player()
var sprite = ambush血脚印.get_node("血脚印")
sprite.play()
await sprite.animation_finished
await SceneManager.pop_os_with_str("c03_s08_囚室看到脚印")
SceneManager.unlock_player()

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=23 format=3 uid="uid://bixdbbyhroepi"]
[gd_scene load_steps=31 format=3 uid="uid://bixdbbyhroepi"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_fusj3"]
[ext_resource type="Script" uid="uid://ddrlpkqfabx6d" path="res://scene/ground/scene/c03/s08_囚室.gd" id="2_fusj3"]
@ -19,6 +19,9 @@
[ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="16_7eou8"]
[ext_resource type="PackedScene" uid="uid://jyi40p8ylsj1" path="res://scene/ground/script/c03/s08_closeup符纸.tscn" id="17_06t0x"]
[ext_resource type="Texture2D" uid="uid://bpjqwfihjol7t" path="res://asset/art/scene/c03/s08_囚室/符纸.png" id="17_7eou8"]
[ext_resource type="SpriteFrames" uid="uid://cwes55ajc3rd4" path="res://asset/art/gif/c02_空房间/c02_空房间_frames.tres" id="19_cnbie"]
[ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="20_vu7oc"]
[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="21_cvhc1"]
[sub_resource type="Animation" id="Animation_7eou8"]
length = 0.001
@ -92,6 +95,42 @@ _data = {
&"drop_wizardpaper": SubResource("Animation_a5pph")
}
[sub_resource type="AtlasTexture" id="AtlasTexture_chbaa"]
atlas = ExtResource("20_vu7oc")
region = Rect2(0, 0, 6, 14)
[sub_resource type="AtlasTexture" id="AtlasTexture_th1ek"]
atlas = ExtResource("20_vu7oc")
region = Rect2(6, 0, 6, 14)
[sub_resource type="AtlasTexture" id="AtlasTexture_to1d1"]
atlas = ExtResource("20_vu7oc")
region = Rect2(12, 0, 6, 14)
[sub_resource type="AtlasTexture" id="AtlasTexture_nx6jy"]
atlas = ExtResource("20_vu7oc")
region = Rect2(18, 0, 6, 14)
[sub_resource type="SpriteFrames" id="SpriteFrames_qiw1x"]
animations = [{
"frames": [{
"duration": 3.0,
"texture": SubResource("AtlasTexture_chbaa")
}, {
"duration": 3.0,
"texture": SubResource("AtlasTexture_th1ek")
}, {
"duration": 3.0,
"texture": SubResource("AtlasTexture_to1d1")
}, {
"duration": 3.0,
"texture": SubResource("AtlasTexture_nx6jy")
}],
"loop": true,
"name": &"default",
"speed": 10.0
}]
[node name="S08" type="Node2D"]
metadata/_edit_horizontal_guides_ = [-627.0]
@ -209,6 +248,31 @@ rotation = -0.698132
scale = Vector2(0.3, 0.3)
texture = ExtResource("17_7eou8")
[node name="Ambush血脚印" parent="Ground/DeployLayer" index="9" instance=ExtResource("12_73c8v")]
unique_name_in_owner = true
position = Vector2(287, 63)
hook_method = "play_footstep"
[node name="血脚印" type="AnimatedSprite2D" parent="Ground/DeployLayer/Ambush血脚印"]
position = Vector2(-64, -25)
sprite_frames = ExtResource("19_cnbie")
animation = &"空房间血脚印"
flip_h = true
[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer/Ambush血脚印"]
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
position = Vector2(-83.2, 7.6172)
sprite_frames = SubResource("SpriteFrames_qiw1x")
autoplay = "default"
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Ambush血脚印"]
position = Vector2(-83.2, -5.2)
color = Color(0.999971, 0.912551, 0.842208, 1)
energy = 1.2
blend_mode = 2
texture = ExtResource("21_cvhc1")
texture_scale = 0.3
[node name="MainPlayer" parent="Ground" index="5"]
position = Vector2(63, 95)
catty_light_energy = 0.5

View File

@ -4,7 +4,7 @@ extends AnimationRoot
# 覆盖该方法
func _default_data() -> Dictionary:
return {}
return {"monster_woken": false}
func _ready() -> void:
@ -14,23 +14,42 @@ func _ready() -> void:
#region node_reference
var sfx_2d棺材呼吸声monster: Sfx2D
var sfx_2d棺材呼吸声closeup: Sfx2D
var sfx_2d棺材呼吸声: Sfx2D
var closeup棺材特写: Closeup2D
#endregion
# 读取设置变量名
func _setup_node_reference() -> void:
sfx_2d棺材呼吸声monster = $"../DeployLayer/AnimatableBody棺材怪/Sfx2D棺材呼吸声Monster"
sfx_2d棺材呼吸声closeup = $"../DeployLayer/Closeup棺材特写/Sfx2D棺材呼吸声Closeup"
sfx_2d棺材呼吸声 = $"../DeployLayer/Sfx2D棺材呼吸声"
closeup棺材特写 = $"../DeployLayer/Closeup棺材特写"
func _on_ground_ready() -> void:
_coffin_monster_climb_out()
closeup棺材特写.exit.connect(_on_coffin_exit)
if data["monster_woken"]:
closeup棺材特写.hide()
sfx_2d棺材呼吸声.stop()
func _on_coffin_exit(arg) -> void:
if arg:
set_data("monster_woken", true)
_coffin_monster_climb_out()
func _coffin_monster_climb_out() -> void:
sfx_2d棺材呼吸声closeup.easing_kill(0.5)
sfx_2d棺材呼吸声closeup.play()
await Util.wait(2.0)
# play("monster_climbing")
SceneManager.lock_player()
play("monster_first_contact")
SceneManager.pop_debug_dialog_info("音效", "棺材怪对峙amb+爬行sfx")
await animation_finished
SceneManager.unlock_player()
func monster_disappear_ambush() -> void:
sfx_2d棺材呼吸声.easing_kill()
var monster = $"../DeployLayer/Pro棺材怪2"
var tween = create_tween()
tween.tween_property(monster, "modulate:a", 0.0, 0.4)
SceneManager.pop_debug_dialog_info("音效", "棺材怪突然消失sfx")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=20 format=3 uid="uid://dfln301xllqpn"]
[gd_scene load_steps=22 format=3 uid="uid://dfln301xllqpn"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_8vqn6"]
[ext_resource type="Script" uid="uid://dxt2u1jajrm1g" path="res://scene/ground/scene/c03/s09_棺材房.gd" id="2_8vqn6"]
@ -10,24 +10,199 @@
[ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="7_f663s"]
[ext_resource type="Texture2D" uid="uid://bokcuqf4oist4" path="res://asset/art/scene/c03/s09_棺材房/棺材.png" id="7_kdfpp"]
[ext_resource type="PackedScene" uid="uid://btmen4wc4uhhj" path="res://scene/ground/script/c03/s09_closeup棺材特写.tscn" id="7_klnhf"]
[ext_resource type="AudioStream" uid="uid://mff0udi3glb4" path="res://asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.ogg" id="9_alans"]
[ext_resource type="SpriteFrames" uid="uid://cvjl0m6b5oc6f" path="res://asset/art/gif/c03_棺材怪/c03_棺材怪_frames.tres" id="9_mpel5"]
[ext_resource type="Script" uid="uid://wapo47a1oddf" path="res://scene/entity/audio/sfx2d.gd" id="10_htuhx"]
[ext_resource type="Script" uid="uid://cphfob11f7atx" path="res://addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd" id="10_t7o3d"]
[ext_resource type="AudioStream" uid="uid://cfsx6yqrw5gp4" path="res://asset/audio/sfx/交互/第二章/棺材怪呼吸.ogg" id="11_qr48f"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="13_alans"]
[ext_resource type="Texture2D" uid="uid://d3rl4pyal4bao" path="res://asset/art/scene/c03/s09_棺材房/角落胖子干尸.png" id="14_htuhx"]
[ext_resource type="AudioStream" uid="uid://b8gsppgtp8tdk" path="res://asset/audio/sfx/旧版/lvping/footstep_earth_left.ogg" id="15_qr48f"]
[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="15_rcrkk"]
[sub_resource type="Animation" id="Animation_htuhx"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DeployLayer/Pro棺材怪/呼吸声跟随1:remote_path")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [NodePath("")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("%Sfx2D棺材怪移动声:playing")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("%Sfx2D棺材呼吸声:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(341, 45)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("DeployLayer/Pro棺材怪:position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(611, -65)]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("DeployLayer/Pro棺材怪2:position")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(-88, 12)]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("DeployLayer/Pro棺材怪2/呼吸声跟随2:remote_path")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [NodePath("")]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("DeployLayer/Pro棺材怪2:animation")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"棺材怪走路"]
}
[sub_resource type="Animation" id="Animation_alans"]
resource_name = "monster_climbing"
length = 2.0
resource_name = "monster_first_contact"
length = 7.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DeployLayer/Pro棺材怪/呼吸声跟随1:remote_path")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 3.5),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [NodePath("../../Sfx2D棺材呼吸声"), NodePath("")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("DeployLayer/Pro棺材怪:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 2.33333, 3.5),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(453, -100), Vector2(453, -100), Vector2(-100, -100)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("DeployLayer/Pro棺材怪2:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 3.93333, 5.53333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(-88, 12), Vector2(-88, 12), Vector2(50, 12)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("DeployLayer/Pro棺材怪2/呼吸声跟随2:remote_path")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 3.56667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [NodePath(""), NodePath("../../Sfx2D棺材呼吸声")]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("%Sfx2D棺材怪移动声:playing")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(2.37),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "method"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("MainPlayer")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0, 2.7),
"transitions": PackedFloat32Array(1, 1),
"values": [{
"args": [Vector2(1, 0)],
"method": &"set_facing_direction"
}, {
"args": [Vector2(-1, 0)],
"method": &"set_facing_direction"
}]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("DeployLayer/Pro棺材怪2:animation")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(5.83333),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"棺材怪受惊"]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
_data = {
&"RESET": SubResource("Animation_htuhx"),
&"monster_climbing": SubResource("Animation_alans")
&"monster_first_contact": SubResource("Animation_alans")
}
[node name="S09" type="Node2D"]
@ -79,65 +254,75 @@ position = Vector2(420, 56)
sign_mark_offset = Vector2(27.55, 0)
action = 3
[node name="Closeup棺材特写" parent="Ground/DeployLayer" index="4" instance=ExtResource("6_tmrc4")]
[node name="Sfx2D棺材呼吸声" type="AudioStreamPlayer2D" parent="Ground/DeployLayer" index="4"]
unique_name_in_owner = true
position = Vector2(341, 45)
stream = ExtResource("11_qr48f")
autoplay = true
max_distance = 1000.0
attenuation = 2.0
bus = &"game_sfx"
script = ExtResource("10_htuhx")
loop = true
metadata/_custom_type_script = "uid://wapo47a1oddf"
[node name="Closeup棺材特写" parent="Ground/DeployLayer" index="5" instance=ExtResource("6_tmrc4")]
position = Vector2(338, 54)
texture = ExtResource("7_kdfpp")
packed_scene = ExtResource("7_klnhf")
sign_mark_offset = Vector2(0, -21.53)
collision_width_and_x = Vector2(100.52, 0)
[node name="Sfx2D棺材呼吸声Closeup" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Closeup棺材特写"]
unique_name_in_owner = true
stream = ExtResource("9_alans")
autoplay = true
max_distance = 1000.0
attenuation = 2.0
bus = &"game_sfx"
script = ExtResource("10_htuhx")
metadata/_custom_type_script = "uid://wapo47a1oddf"
[node name="Pro棺材怪" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="5"]
position = Vector2(519, -89)
[node name="Pro棺材怪" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="6"]
light_mask = 3
position = Vector2(611, -65)
sprite_frames = ExtResource("9_mpel5")
animation = &"墙上呼吸帧"
autoplay = "爬墙循环动画"
autoplay = "墙上呼吸帧"
script = ExtResource("10_t7o3d")
metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="Sfx2D棺材呼吸声Monster" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Pro棺材怪"]
unique_name_in_owner = true
position = Vector2(15, -22)
stream = ExtResource("9_alans")
max_distance = 1000.0
attenuation = 2.0
bus = &"game_sfx"
script = ExtResource("10_htuhx")
metadata/_custom_type_script = "uid://wapo47a1oddf"
[node name="Sfx2D棺材怪移动声" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Pro棺材怪"]
unique_name_in_owner = true
position = Vector2(15, -22)
stream = ExtResource("9_alans")
stream = ExtResource("15_qr48f")
volume_db = 10.0
max_distance = 1000.0
attenuation = 2.0
bus = &"game_sfx"
script = ExtResource("10_htuhx")
loop = true
metadata/_custom_type_script = "uid://wapo47a1oddf"
[node name="Pro棺材怪2" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="6"]
position = Vector2(122, 20)
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Pro棺材怪"]
position = Vector2(-19, -27)
range_item_cull_mask = 2
texture = ExtResource("15_rcrkk")
[node name="呼吸声跟随1" type="RemoteTransform2D" parent="Ground/DeployLayer/Pro棺材怪"]
[node name="Pro棺材怪2" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="7"]
light_mask = 3
position = Vector2(-88, 12)
sprite_frames = ExtResource("9_mpel5")
animation = &"棺材怪受惊"
autoplay = "爬墙循环动画"
frame = 1
animation = &"棺材怪走路"
autoplay = "棺材怪走路"
flip_h = true
script = ExtResource("10_t7o3d")
autostart = false
metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="Ambush棺材怪消失" parent="Ground/DeployLayer/Pro棺材怪2" instance=ExtResource("13_alans")]
position = Vector2(121, 40)
position = Vector2(155, 45)
enabled = false
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Pro棺材怪2"]
position = Vector2(-20, 4)
range_item_cull_mask = 2
texture = ExtResource("15_rcrkk")
[node name="呼吸声跟随2" type="RemoteTransform2D" parent="Ground/DeployLayer/Pro棺材怪2"]
[node name="MainPlayer" parent="Ground" index="5"]
position = Vector2(325, 98)
catty_light_energy = 0.5

View File

@ -159,7 +159,7 @@ scale = Vector2(1.5, 1.5)
sprite_frames = ExtResource("17_novpu")
animation = &"小手"
autoplay = "小手"
frame_progress = 0.32264
frame_progress = 0.309503
speed_scale = 0.85
[node name="河里的手2" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="10"]

View File

@ -30,7 +30,7 @@ func _on_ground_ready(_ground: Ground2D):
closeup.exit.connect(_on_closeup_exit)
func _on_closeup_exit(win := false) -> void:
func _on_closeup_exit(win = false) -> void:
if win:
# 完成抓药游戏
EventManager.set_stage_if_greater("c03_drug_game", 2)

View File

@ -21,6 +21,7 @@ func _ready() -> void:
SceneManager.pop_center_notification("ui_left_mouse_shave")
if exit_on_shaven_fulfilled:
shaven_fulfilled.connect(exit.emit.bind(true))
%"Draggable纸钱".picked.connect(GlobalFunctor.c03_get_paper_coin)
var exiting = false

View File

@ -39,10 +39,10 @@ func _on_ground_ready(_ground: Ground2D):
if the_blind.animation == "瞎子_抽烟":
await the_blind.animation_finished
# Part2: 下半段对话2&灯忽闪
DialogueManager.show_dialogue_balloon(c03_dialogue, "c03_s02_邀请小蝉与瞎子对话2")
animation_player.play("light_flipping")
# TODO
SceneManager.pop_debug_dialog_info("音效", "老鼠叫声+悉悉索索老鼠走路钻洞声")
$"Sfx灰姑出场".play()
DialogueManager.show_dialogue_balloon(c03_dialogue, "c03_s02_邀请小蝉与瞎子对话2")
await DialogueManager.dialogue_ended
# TODO
# Part3: 瞎子咳嗽

View File

@ -65,10 +65,9 @@ func _try_interact() -> void:
await Util.wait(0.5)
# 飞针
$AnimationPlayer.play("cutting_overhead")
EventManager.set_stage_if_greater("c03_s03_laizi_breath", 1)
# 抖动
Util.shake_layer(self, 0.3)
# TODO
SceneManager.pop_debug_dialog_info("音效", "使用剪刀(惊悚)")
$"".hide()
await Util.wait(5.0)
$"后脑勺".show()
@ -90,7 +89,7 @@ func _braid_cutting_show() -> void:
$"".hide()
$"头受伤".hide()
$"后脑勺".hide()
# SceneManager.enable_prop_item("prop_剪下的辫子")
# SceneManager.enable_prop_item("prop_辫子")
await Util.wait(2.0)
$AnimationPlayer.play("light_and_canvas_flipping")
await Util.wait(1.5)

View File

@ -17,11 +17,11 @@ func _ready() -> void:
SceneManager.dizzy_effect(3.0)
await Util.wait(3.3)
await SceneManager.pop_os_with_str("c03_s03_演出结束")
SceneManager.enable_prop_item("prop_剪下的辫子")
SceneManager.enable_prop_item("prop_辫子")
SceneManager.unlock_player()
)
EventManager.set_stage("c03_s03_laizi_braid", 2)
SceneManager.enable_prop_item_silently("prop_剪下的辫子")
SceneManager.enable_prop_item_silently("prop_辫子")
await Util.wait(0.6)
exit.emit(true)

View File

@ -2,6 +2,7 @@ extends CanvasLayer
@onready var bg = $BG as TextureRect
@onready var rope_with_mahjong = $"Draggable2D麻绳" as Draggable2D
@onready var dusted_face = $"BG灰尘脸" as Control
func _ready() -> void:
@ -9,6 +10,7 @@ func _ready() -> void:
var mahjong_picked = ArchiveManager.get_global_value("c03_s03_mahjong_picked")
if mahjong_picked:
rope_with_mahjong.queue_free()
dusted_face.hide()
else:
rope_with_mahjong.picked.connect(_on_btn_pressed, CONNECT_ONE_SHOT)
@ -17,3 +19,10 @@ func _on_btn_pressed(_arg):
ArchiveManager.set_global_entry("c03_s03_mahjong_picked", true)
SceneManager.enable_prop_item("prop_麻将2")
rope_with_mahjong.queue_free()
await SceneManager.get_inspector().quit_and_hidden
# TODO 诡异小孩声
SceneManager.pop_debug_dialog_info("音效", "诡异小孩声")
$"Sfx诡异小孩声".play()
var tween := create_tween()
tween.tween_interval(1.5)
tween.tween_property(dusted_face, "modulate:a", 0.0, 1.5)

View File

@ -1,7 +1,9 @@
[gd_scene load_steps=6 format=3 uid="uid://bnoqhovb0wjem"]
[gd_scene load_steps=8 format=3 uid="uid://bnoqhovb0wjem"]
[ext_resource type="Script" path="res://scene/ground/script/c03/s03_closeup镜子特写.gd" id="1_l7eke"]
[ext_resource type="Script" uid="uid://xyswrst2qvnv" path="res://scene/ground/script/c03/s03_closeup镜子特写.gd" id="1_l7eke"]
[ext_resource type="Texture2D" uid="uid://cv43fc0yphoyh" path="res://asset/art/scene/c03/s03_瞎子理发店/ux_镜子特写_脸.png" id="2_h11vl"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="2_x88e4"]
[ext_resource type="Texture2D" uid="uid://47bswjbnegh6" path="res://asset/art/scene/c03/s03_瞎子理发店/ux_镜子特写_浮现前.png" id="3_l7eke"]
[ext_resource type="PackedScene" uid="uid://bg7oictr1wgex" path="res://scene/little_game/general/draggable.tscn" id="4_pmhbo"]
[ext_resource type="Texture2D" uid="uid://dri7gy7janvim" path="res://asset/art/scene/c03/s03_瞎子理发店/ux_镜子特写_红绳麻将.png" id="5_l7eke"]
[ext_resource type="Texture2D" uid="uid://gan7qq0i7uiw" path="res://asset/art/scene/c03/s03_瞎子理发店/ux_镜子遮罩.png" id="5_pmhbo"]
@ -9,6 +11,11 @@
[node name="Closeup镜子特写" type="CanvasLayer"]
script = ExtResource("1_l7eke")
[node name="Sfx诡异小孩声" type="AudioStreamPlayer" parent="."]
bus = &"game_sfx"
script = ExtResource("2_x88e4")
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="BG" type="TextureRect" parent="."]
anchors_preset = 15
anchor_right = 1.0
@ -17,6 +24,15 @@ grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_h11vl")
[node name="BG灰尘脸" type="TextureRect" parent="."]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("3_l7eke")
[node name="Draggable2D麻绳" parent="." instance=ExtResource("4_pmhbo")]
position = Vector2(122, 78)
act_as_button = true

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=27 format=3 uid="uid://dohvkxfdmcrw4"]
[gd_scene load_steps=26 format=3 uid="uid://dohvkxfdmcrw4"]
[ext_resource type="Script" uid="uid://d31fc1bolhwlf" path="res://scene/ground/script/c02/刮海报.gd" id="1_pdoaa"]
[ext_resource type="Script" uid="uid://bagqdqsd0b4fy" path="res://scene/ground/script/c03/鬼母子游戏.gd" id="2_86fqw"]
@ -6,6 +6,7 @@
[ext_resource type="PackedScene" uid="uid://bg7oictr1wgex" path="res://scene/little_game/general/draggable.tscn" id="3_86fqw"]
[ext_resource type="Texture2D" uid="uid://cbql1i4hblmt1" path="res://asset/art/ui/遮罩/inspect特写通用遮罩.png" id="4_cir1h"]
[ext_resource type="PackedScene" uid="uid://bvnclp341hxoh" path="res://scene/entity/ux/刮刮乐.tscn" id="5_edyi3"]
[ext_resource type="Texture2D" uid="uid://vyuf0wekr1lq" path="res://asset/art/scene/c03/s03_瞎子理发店/癞子特写/纸钱1.png" id="6_b7rxv"]
[ext_resource type="AudioStream" uid="uid://bomvnle4oh1ol" path="res://asset/audio/sfx/交互/第一章/sfx_折纸.ogg" id="6_dyn3c"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="7_8ty36"]
[ext_resource type="AudioStream" uid="uid://bisi1i5u4yyql" path="res://asset/audio/effect/impact/impactPlank_medium_003.ogg" id="8_6jvn1"]
@ -13,11 +14,9 @@
[ext_resource type="AudioStream" uid="uid://7ak57qrf38im" path="res://asset/audio/effect/impact/impactBell_heavy_001.ogg" id="9_s7g11"]
[ext_resource type="Texture2D" uid="uid://w3ht3dr5ovsw" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/2背.png" id="10_pilu4"]
[ext_resource type="Texture2D" uid="uid://cx3kcrqpjt55x" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/3背.png" id="11_6jvn1"]
[ext_resource type="Texture2D" uid="uid://fgafxxahidbk" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/4背.png" id="12_s7g11"]
[ext_resource type="Texture2D" uid="uid://dc1yq5hnho25q" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/4正.png" id="12_b7rxv"]
[ext_resource type="SpriteFrames" uid="uid://cmvr3lbwe3h7p" path="res://asset/art/gif/c03_特写与游戏动画/c03_特写与游戏动画_frames.tres" id="14_s7g11"]
[ext_resource type="PackedScene" uid="uid://bkk1rxx36ghrl" path="res://scene/entity/ux/hover_light_click_area.tscn" id="15_3uuyc"]
[ext_resource type="Texture2D" uid="uid://bqodfve8iavgv" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/e_剪刀.png" id="16_go12c"]
[ext_resource type="Texture2D" uid="uid://boc0hof5p6sjs" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/l_剪刀.png" id="16_ikyli"]
[ext_resource type="Texture2D" uid="uid://cstd74y5811u3" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/l_舌头.png" id="17_682sk"]
[ext_resource type="Script" uid="uid://0wjaho6qkg6s" path="res://manager/event_manager/event_binder.gd" id="17_dhl8m"]
[ext_resource type="Texture2D" uid="uid://csu41qqgeqqhl" path="res://asset/art/scene/c03/s03_瞎子理发店/鬼母子神/e_舌头.png" id="19_puk8y"]
@ -107,11 +106,18 @@ shape = SubResource("CapsuleShape2D_3uuyc")
position = Vector2(437, 206)
act_as_button = true
freezing = true
texture = ExtResource("12_s7g11")
texture = ExtResource("12_b7rxv")
[node name="CollisionShape2D" type="CollisionShape2D" parent="鬼母子游戏/kid4"]
shape = SubResource("CapsuleShape2D_ikyli")
[node name="EventBinder" type="Node" parent="鬼母子游戏/kid4"]
script = ExtResource("17_dhl8m")
updater_event = &"c03_s03_papercoin3"
updater_mode = "unfreezer"
updater_ease_duration = 0.0
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="倒塌" type="AnimatedSprite2D" parent="鬼母子游戏"]
visible = false
sprite_frames = ExtResource("14_s7g11")
@ -142,8 +148,6 @@ polygon = PackedVector2Array(-49, -10, -49, -2.8, -38, 3.2, -38, 5.1, 5.1, 3, 13
[node name="EventBinder" type="Node" parent="鬼母子游戏/倒塌/Props/纸舌头"]
script = ExtResource("17_dhl8m")
memo = "c03_hariti_tongue=[0] 时,显示: [纸舌头]
[纸舌头] interacted 时: c03_hariti_tongue=1(greater)"
updater_event = &"c03_hariti_tongue"
updater_mode = "shower"
updater_ease_duration = 0.0
@ -152,36 +156,25 @@ trigger_event = &"c03_hariti_tongue"
trigger_mode = "interacted"
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="剪刀" parent="鬼母子游戏/倒塌/Props" instance=ExtResource("15_3uuyc")]
[node name="Draggable纸钱" parent="." instance=ExtResource("3_86fqw")]
unique_name_in_owner = true
position = Vector2(364, 248)
position = Vector2(438, 221)
act_as_button = true
texture = ExtResource("6_b7rxv")
[node name="Sprite2D" type="Sprite2D" parent="鬼母子游戏/倒塌/Props/剪刀"]
position = Vector2(-55, -19)
texture = ExtResource("16_go12c")
centered = false
[node name="PointLight2D" type="PointLight2D" parent="鬼母子游戏/倒塌/Props/剪刀"]
position = Vector2(-1, 1)
range_layer_max = 10
texture = ExtResource("16_ikyli")
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="鬼母子游戏/倒塌/Props/剪刀"]
visible = false
polygon = PackedVector2Array(4, -25, -10, -25, -14, -13.4, -14, -8.4, -37.5, 1, -41.6, 1, -50.6, 7, -53, 7, -56, 11, -57.2, 11, -58.3, 13.2, -55, 17.6, -55, 20.3, -38.7, 18, -34.7, 18, -8, 8.4, -5.7, 8, 7.3, 18, 35.6, 18, 44.6, 12, 47.1, 12, 54.1, 1, 56.5, 1, 54, -10.4, 54, -12.8, 43, -23.8, 43, -25, 29.4, -25, 27, -21.8, 1.4, -18, 4, -23.6)
[node name="EventBinder" type="Node" parent="鬼母子游戏/倒塌/Props/剪刀"]
[node name="EventBinder" type="Node" parent="Draggable纸钱"]
script = ExtResource("17_dhl8m")
memo = "c03_hariti_scissor=[0] 时,显示: [剪刀]
[剪刀] interacted 时: c03_hariti_scissor=1(greater)"
updater_event = &"c03_hariti_scissor"
updater_event = &"c03_s03_papercoin3"
updater_mode = "shower"
updater_ease_duration = 0.0
updater_stages = Array[int]([0])
trigger_event = &"c03_hariti_scissor"
trigger_mode = "interacted"
trigger_event = &"c03_s03_papercoin3"
trigger_mode = "picked"
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Draggable纸钱"]
polygon = PackedVector2Array(13, -30, -9.5, -30, -19.5, -25, -22.1, -25, -30, -12.2, -30, 14.1, -25, 21.6, -25, 24.3, -12, 30, 13.7, 30, 21.6, 25, 24.2, 25, 30, 14.5, 30, -11, 26, -17.6, 26, -20, 13, -29)
[node name="遮罩" type="TextureRect" parent="."]
anchors_preset = 15
anchor_right = 1.0

View File

@ -31,12 +31,19 @@ var success = false
func _ready() -> void:
layer = GlobalConfig.CANVAS_LAYER_LITTLE_GAME
_toggle_activation_for_all(false)
if EventManager.get_stage("c03_mahjong_game") == 0 and not SceneManager.has_prop("prop_麻将2"):
%"12".visible = false
SceneManager.pop_center_notification("input_麻将游戏_麻将不足")
await Util.wait(3.0)
exit.emit(false)
return
if EventManager.get_stage("c03_mahjong_game") == 0:
var all_ready = true
if not SceneManager.has_prop("prop_麻将"):
all_ready = false
%"12".visible = false
if not SceneManager.has_prop("prop_麻将2"):
all_ready = false
%"13".visible = false
if not all_ready:
SceneManager.pop_center_notification("input_麻将游戏_麻将不足")
await Util.wait(3.0)
exit.emit(false)
return
# 游戏一开始就收起玩家麻将道具,设置 c03_mahjong_game 为 1
EventManager.set_stage_if_greater("c03_mahjong_game", 1)
SceneManager.disable_prop_item("prop_麻将")
@ -129,8 +136,10 @@ func _check_if_success() -> void:
# 下一阶段
SceneManager.enable_important_item("prop_两个麻将", false)
EventManager.set_stage_if_greater("c03_mahjong_game", 2)
DialogueManager.show_dialogue_balloon(c03_dialog, "c03_s04_整理麻将游戏0")
await Util.wait(1.0)
animation_player.play("take_to_the_desk")
await Util.wait(1.5)
DialogueManager.show_dialogue_balloon(c03_dialog, "c03_s04_整理麻将游戏0")
await DialogueManager.dialogue_ended
$"Sfx黑屏转场".global_play()
if animation_player.is_playing():

Some files were not shown because too many files have changed in this diff Show More