diff --git a/asset/art/prop/c02/海报特写/剪辫子侦探.png b/asset/art/prop/c02/海报特写/剪辫子侦探.png old mode 100755 new mode 100644 index ccab69f5..5c3e806a Binary files a/asset/art/prop/c02/海报特写/剪辫子侦探.png and b/asset/art/prop/c02/海报特写/剪辫子侦探.png differ diff --git a/asset/art/prop/c02/海报(小)/剪辫子侦探.png b/asset/art/prop/c02/海报(小)/剪辫子侦探.png old mode 100755 new mode 100644 index a4ffa09b..1abff7ec Binary files a/asset/art/prop/c02/海报(小)/剪辫子侦探.png and b/asset/art/prop/c02/海报(小)/剪辫子侦探.png differ diff --git a/asset/art/scene/c02/s02_大门过道/bg_过道背景.png b/asset/art/scene/c02/s02_大门过道/bg_过道背景.png index 15c5eb3d..2b4694e0 100644 Binary files a/asset/art/scene/c02/s02_大门过道/bg_过道背景.png and b/asset/art/scene/c02/s02_大门过道/bg_过道背景.png differ diff --git a/asset/art/scene/c02/s02_大门过道/ux_过道面板.png b/asset/art/scene/c02/s02_大门过道/ux_过道面板.png index 24a16f91..6003edcf 100644 Binary files a/asset/art/scene/c02/s02_大门过道/ux_过道面板.png and b/asset/art/scene/c02/s02_大门过道/ux_过道面板.png differ diff --git a/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png b/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png new file mode 100644 index 00000000..541347b3 Binary files /dev/null and b/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png differ diff --git a/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png.import b/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png.import new file mode 100644 index 00000000..37ea011a --- /dev/null +++ b/asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://8hjot820jnyo" +path="res://.godot/imported/f_禁用火具.png-eeda21314b6690c12a250a220c4d2ada.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c02/s03_公寓一楼院子/f_禁用火具.png" +dest_files=["res://.godot/imported/f_禁用火具.png-eeda21314b6690c12a250a220c4d2ada.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png b/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png new file mode 100644 index 00000000..fb1424d6 Binary files /dev/null and b/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png differ diff --git a/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png.import b/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png.import new file mode 100644 index 00000000..46a88b67 --- /dev/null +++ b/asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://diuh52qo2o6pa" +path="res://.godot/imported/f_院子内墙上文字.png-107caa7c643223d1c6850711ee51240a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png" +dest_files=["res://.godot/imported/f_院子内墙上文字.png-107caa7c643223d1c6850711ee51240a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/art/scene/c02/s12_to_s17_盒子猫/bg_初始.png b/asset/art/scene/c02/s12_to_s17_盒子猫/bg_初始.png index ff56d8c1..b73ed010 100644 Binary files a/asset/art/scene/c02/s12_to_s17_盒子猫/bg_初始.png and b/asset/art/scene/c02/s12_to_s17_盒子猫/bg_初始.png differ diff --git a/asset/art/scene/c02/s12_to_s17_盒子猫/ux_特写.png b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_特写.png index ef2a8e95..b8c9ba46 100644 Binary files a/asset/art/scene/c02/s12_to_s17_盒子猫/ux_特写.png and b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_特写.png differ diff --git a/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png new file mode 100644 index 00000000..ef2a8e95 Binary files /dev/null and b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png differ diff --git a/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png.import b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png.import new file mode 100644 index 00000000..8979261f --- /dev/null +++ b/asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bihg7v2peym1l" +path="res://.godot/imported/ux_空白.png-84d43bcc979b998d57e5673fffce1516.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://asset/art/scene/c02/s12_to_s17_盒子猫/ux_空白.png" +dest_files=["res://.godot/imported/ux_空白.png-84d43bcc979b998d57e5673fffce1516.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav b/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav new file mode 100644 index 00000000..9c5d6c6c Binary files /dev/null and b/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav differ diff --git a/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav.import b/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav.import new file mode 100644 index 00000000..a479ba90 --- /dev/null +++ b/asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://o7fj0r0fbm1h" +path="res://.godot/imported/sfx_冷飕飕.wav-49bde3acf56c811a4c6eeb2e0878cd83.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav" +dest_files=["res://.godot/imported/sfx_冷飕飕.wav-49bde3acf56c811a4c6eeb2e0878cd83.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav b/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav new file mode 100644 index 00000000..c8227c21 Binary files /dev/null and b/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav differ diff --git a/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav.import b/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav.import new file mode 100644 index 00000000..5481e70c --- /dev/null +++ b/asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dkadc7ewletgn" +path="res://.godot/imported/sfx_猪头喘气.wav-e61d36f6c63e0887ca4e5a06164c0c2c.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav" +dest_files=["res://.godot/imported/sfx_猪头喘气.wav-e61d36f6c63e0887ca4e5a06164c0c2c.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav b/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav new file mode 100644 index 00000000..c4eecf63 Binary files /dev/null and b/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav differ diff --git a/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav.import b/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav.import new file mode 100644 index 00000000..d312874c --- /dev/null +++ b/asset/audio/sfx/交互/第一章/sfx_猫挠门.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://6q5qi1qon35r" +path="res://.godot/imported/sfx_猫挠门.wav-5b50528f62e4bb1a657aee883ca56db3.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/sfx_猫挠门.wav" +dest_files=["res://.godot/imported/sfx_猫挠门.wav-5b50528f62e4bb1a657aee883ca56db3.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav b/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav new file mode 100644 index 00000000..4f13b4c6 Binary files /dev/null and b/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav differ diff --git a/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav.import b/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav.import new file mode 100644 index 00000000..05fe93cb --- /dev/null +++ b/asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://bma77k6n4hwle" +path="res://.godot/imported/sfx_猫猫钻盒子.wav-fff524f5c65b7d65f903cb8a22b20c3a.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav" +dest_files=["res://.godot/imported/sfx_猫猫钻盒子.wav-fff524f5c65b7d65f903cb8a22b20c3a.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav b/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav new file mode 100644 index 00000000..ef525928 Binary files /dev/null and b/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav differ diff --git a/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav.import b/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav.import new file mode 100644 index 00000000..bdff4808 --- /dev/null +++ b/asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dukcyf5fq4drj" +path="res://.godot/imported/sfx_鞋子掉了.wav-bd029033cc3c235c5126d4fefb4c08f4.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav" +dest_files=["res://.godot/imported/sfx_鞋子掉了.wav-bd029033cc3c235c5126d4fefb4c08f4.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav b/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav new file mode 100644 index 00000000..24db8adc Binary files /dev/null and b/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav differ diff --git a/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav.import b/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav.import new file mode 100644 index 00000000..b77cad70 --- /dev/null +++ b/asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://mff0udi3glb4" +path="res://.godot/imported/瞎子房间癞子呼吸.wav-88d74d3c8d27da9965f81cbf84d398b7.sample" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav" +dest_files=["res://.godot/imported/瞎子房间癞子呼吸.wav-88d74d3c8d27da9965f81cbf84d398b7.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/交互/第一章/风吹灭火.ogg b/asset/audio/sfx/交互/第一章/风吹灭火.ogg new file mode 100644 index 00000000..8f288d20 Binary files /dev/null and b/asset/audio/sfx/交互/第一章/风吹灭火.ogg differ diff --git a/asset/audio/sfx/交互/第一章/风吹灭火.ogg.import b/asset/audio/sfx/交互/第一章/风吹灭火.ogg.import new file mode 100644 index 00000000..67372e81 --- /dev/null +++ b/asset/audio/sfx/交互/第一章/风吹灭火.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dnk2cba1bwr4s" +path="res://.godot/imported/风吹灭火.ogg-407d91e0eb2937c6a489a47456b187c4.oggvorbisstr" + +[deps] + +source_file="res://asset/audio/sfx/交互/第一章/风吹灭火.ogg" +dest_files=["res://.godot/imported/风吹灭火.ogg-407d91e0eb2937c6a489a47456b187c4.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav b/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav new file mode 100644 index 00000000..29855735 Binary files /dev/null and b/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav differ diff --git a/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav.import b/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav.import new file mode 100644 index 00000000..3e0a865b --- /dev/null +++ b/asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://bal423qlb3jp2" +path="res://.godot/imported/sfx_夜晚虫鸣.wav-3ae82e24b8f559263fd9e486a25978e8.sample" + +[deps] + +source_file="res://asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav" +dest_files=["res://.godot/imported/sfx_夜晚虫鸣.wav-3ae82e24b8f559263fd9e486a25978e8.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav b/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav new file mode 100644 index 00000000..6d08a3a4 Binary files /dev/null and b/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav differ diff --git a/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav.import b/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav.import new file mode 100644 index 00000000..fb5acaf7 --- /dev/null +++ b/asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://7q03rss2vlcn" +path="res://.godot/imported/sfx_老鼠叫.wav-6bc8d6061275cea774bd013d9442632f.sample" + +[deps] + +source_file="res://asset/audio/sfx/环境音/点缀音/sfx_老鼠叫.wav" +dest_files=["res://.godot/imported/sfx_老鼠叫.wav-6bc8d6061275cea774bd013d9442632f.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/脚步/sfx_猪头走路1.wav b/asset/audio/sfx/脚步/sfx_猪头走路1.wav new file mode 100644 index 00000000..09c08fd7 Binary files /dev/null and b/asset/audio/sfx/脚步/sfx_猪头走路1.wav differ diff --git a/asset/audio/sfx/脚步/sfx_猪头走路1.wav.import b/asset/audio/sfx/脚步/sfx_猪头走路1.wav.import new file mode 100644 index 00000000..4da482e5 --- /dev/null +++ b/asset/audio/sfx/脚步/sfx_猪头走路1.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://djc818l7b4oif" +path="res://.godot/imported/sfx_猪头走路1.wav-ab28234d571102ab9127ac8a82b8447a.sample" + +[deps] + +source_file="res://asset/audio/sfx/脚步/sfx_猪头走路1.wav" +dest_files=["res://.godot/imported/sfx_猪头走路1.wav-ab28234d571102ab9127ac8a82b8447a.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/audio/sfx/脚步/sfx_猪头走路2.wav b/asset/audio/sfx/脚步/sfx_猪头走路2.wav new file mode 100644 index 00000000..457736c7 Binary files /dev/null and b/asset/audio/sfx/脚步/sfx_猪头走路2.wav differ diff --git a/asset/audio/sfx/脚步/sfx_猪头走路2.wav.import b/asset/audio/sfx/脚步/sfx_猪头走路2.wav.import new file mode 100644 index 00000000..db58041b --- /dev/null +++ b/asset/audio/sfx/脚步/sfx_猪头走路2.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://0pm6s7jdo5ca" +path="res://.godot/imported/sfx_猪头走路2.wav-6f7dade147334e57f07a092923ed21ae.sample" + +[deps] + +source_file="res://asset/audio/sfx/脚步/sfx_猪头走路2.wav" +dest_files=["res://.godot/imported/sfx_猪头走路2.wav-6f7dade147334e57f07a092923ed21ae.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/asset/dialogue/c02.dialogue b/asset/dialogue/c02.dialogue index 8b46b4d5..8fdede00 100644 --- a/asset/dialogue/c02.dialogue +++ b/asset/dialogue/c02.dialogue @@ -15,8 +15,8 @@ ~ c02_04_李氏癞子 #[#anonymous] 李兰: 真的假的?你钻进去啦,你这个体型进得去哒? [ID:c02_6偷听对话_李氏_1_fx] -王守义: 小声点,让人听见了倒惹麻烦。[#db=3] [ID:c02_6偷听对话_癞子_1_fx] -李兰: 那你说说,都看到什么啦? [#db=-5] [ID:c02_6偷听对话_李氏_2_fx] +王守义: 小声点,让人听见了倒惹麻烦。 [ID:c02_6偷听对话_癞子_1_fx] +李兰: 那你说说,都看到什么啦?[ID:c02_6偷听对话_李氏_2_fx] 王守义: 不好说,那里头弯弯绕绕的,我得找个时间再去看一眼。 [ID:c02_6偷听对话_癞子_2_fx] 王守义: 对了,你改天撺个局,让方启钊和胖子一块来搓麻,我顺嘴问一道。 [ID:c02_6偷听对话_癞子_3_fx] 王守义: 其余的,不要声张。 [ID:c02_6偷听对话_癞子_4_fx] diff --git a/asset/dialogue/inspect_content.csv b/asset/dialogue/inspect_content.csv index 683f7c18..28453b9e 100644 --- a/asset/dialogue/inspect_content.csv +++ b/asset/dialogue/inspect_content.csv @@ -10,6 +10,7 @@ keys,zh_CN,_character,_notes,_tags c01_飘落的寻人启事1,寻人(看不清)年八岁。,,, c01_飘落的寻人启事2,由(看不清)步行外出,至今未回,遍找无踪。,,, c01_飘落的寻人启事3,如有知其下落者(看不清)备有重谢,绝不失言。,,, +c02_青岛啤酒详情,系最好最廉之酒,并且每星期有新货到埠,,, tdb119a3714,据闻奉贤县分水墩有两人染受鼠疫毙命,医官拟将死者尸骸解剖以观受病之原因及其情状,竟未得死者家属之同意,以该处风气闭塞,闻解剖之说,地方人民甚为惊骇,闻已有聚众滋闹之事,并闻医官已被人殴打,政府以防疫事宜关系紧要拟改令赴沪南区一带调查防疫事宜云。,,, ta750647b12,《申报》,,, t736cca4563,民国五年一月十三日,,, diff --git a/asset/dialogue/inspect_content.dialogue b/asset/dialogue/inspect_content.dialogue index d8ec20d3..91c0f6a5 100644 --- a/asset/dialogue/inspect_content.dialogue +++ b/asset/dialogue/inspect_content.dialogue @@ -5,6 +5,11 @@ 如有知其下落者(看不清)备有重谢,绝不失言。 [ID:c01_飘落的寻人启事3] => END +~ c02_青岛啤酒 +系最好最廉之酒,并且每星期有新货到埠 [ID:c02_青岛啤酒详情] +=> END + + ~ c02_鼠疫海报 据闻奉贤县分水墩有两人染受鼠疫毙命,医官拟将死者尸骸解剖以观受病之原因及其情状,竟未得死者家属之同意,以该处风气闭塞,闻解剖之说,地方人民甚为惊骇,闻已有聚众滋闹之事,并闻医官已被人殴打,政府以防疫事宜关系紧要拟改令赴沪南区一带调查防疫事宜云。[ID:tdb119a3714] 《申报》 [ID:ta750647b12] diff --git a/asset/dialogue/item_description.csv b/asset/dialogue/item_description.csv index c3c5f4b0..4e042486 100644 --- a/asset/dialogue/item_description.csv +++ b/asset/dialogue/item_description.csv @@ -26,6 +26,7 @@ ui_auto_saved,自动保存成功,,,,,Auto save successful ui_press_e,按 E 与场景互动,,,,,Press E to interact ui_press_q_to_exit,按 Q 可退出,,,,, ui_use_prop,按 E 使用道具,,,,,Press E to use prop +ui_left_mouse_shave,按住鼠标拖拽可刮开海报,,,,, ui_important_item_update,重要物品已更新(按 B 打开背包),,,,, ui_switch_prop,点击图标可切换道具(或按 Z/C),,,,, ui_press_shift,按住 Shift 奔跑,,,,, @@ -54,7 +55,7 @@ prop_院长的信,院长的信,,,[#texture=c01/院长的信物品.png][#inspect= prop_院长的信_说明,浦育院院长秦阳
民国21年11月20日
致吕萍:
你现下境况如何?
你虽离开浦育院已久,但我始终没有忘记为你祈祷。
愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。
你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。
若有闲暇,欢迎你回浦育院看看。
院长童玉君
民国十九年十月十五日
公寓地址 芦昌路26弄3号,,,,, prop_火柴,火柴,,,[#texture=c02/火柴.png],, prop_小猫玩具的脑袋,小猫玩具的脑袋,,,[#texture=c02/新小猫头.png],, -prop_无头小猫玩具,无头小猫玩具,,,[#texture=c02/新小猫身体.png],, +prop_无头小猫玩具,无头小猫玩具,,,[#texture=c02/新小猫身体.png][#inspect=c02/新小猫身体_特写.png],, prop_小猫玩具完整,小猫玩具,,,[#texture=c02/新小猫全身.png],, prop_撕下的照片上,撕下的照片(上),,,[#texture=c02/照片_上.png],, prop_老虎钳,老虎钳,,,[#texture=c02/老虎钳物品.png][#inspect=c02/老虎钳.png],, @@ -120,6 +121,9 @@ c02_院子_算命摊位,算命的摊位?,,,,, c02_院子_要下雨,好像要下雨了?,,,,, c02_保卫科花名册os,芦昌公寓居民登记簿,黄国栋记。,,,,, c02_一楼楼道被挡住,被挡住了,,,,, +c02_描述垃圾通道,飘着一股血气,又酸又腥。,,,,, +c02_敲门_肉掉落,楼道有东西掉下来了?,,,,, +c02_敲门_老鼠叼肉,刚刚这里有块肉不见了?,,,,, c02_瞎子卧室_八卦图,「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」
咦,这口诀是谁教我的来着...,,,,, c02_瞎子卧室_血脚印,这画上的脚印和刚刚看到的一样。,,,,, c02_瞎子卧室_十字架,院长房间里也有一个类似的十字架。,,,,, diff --git a/asset/dialogue/item_description.dialogue b/asset/dialogue/item_description.dialogue index 1651d04c..2c44a480 100644 --- a/asset/dialogue/item_description.dialogue +++ b/asset/dialogue/item_description.dialogue @@ -23,6 +23,7 @@ 按 E 与场景互动 [ID:ui_press_e] 按 Q 可退出 [ID:ui_press_q_to_exit] 按 E 使用道具 [ID:ui_use_prop] +按住鼠标拖拽可刮开海报 [ID:ui_left_mouse_shave] 重要物品已更新(按 B 打开背包) [ID:ui_important_item_update] 点击图标可切换道具(或按 Z/C) [ID:ui_switch_prop] 按住 Shift 奔跑 [ID:ui_press_shift] @@ -165,6 +166,10 @@ 芦昌公寓居民登记簿,黄国栋记。 [ID:c02_保卫科花名册os] # c02 内侧楼道 被挡住了 [ID:c02_一楼楼道被挡住] +飘着一股血气,又酸又腥。 [ID:c02_描述垃圾通道] +# c02 敲门_老鼠叼肉 +楼道有东西掉下来了? [ID:c02_敲门_肉掉落] +刚刚这里有块肉不见了? [ID:c02_敲门_老鼠叼肉] # 瞎子卧室 「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」
咦,这口诀是谁教我的来着... [ID:c02_瞎子卧室_八卦图] 这画上的脚印和刚刚看到的一样。 [ID:c02_瞎子卧室_血脚印] diff --git a/config/animation/entity_sprite_frames.tres b/config/animation/entity_sprite_frames.tres index 85ca31c8..38879b40 100644 --- a/config/animation/entity_sprite_frames.tres +++ b/config/animation/entity_sprite_frames.tres @@ -2910,31 +2910,67 @@ animations = [{ "duration": 1.0, "texture": ExtResource("578_rneg4") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("579_pwgpx") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("580_y13bn") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("581_cs3vs") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("582_wm8vb") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("583_8ghmx") }, { -"duration": 1.0, +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, +"texture": ExtResource("582_wm8vb") +}, { +"duration": 1.5, +"texture": ExtResource("583_8ghmx") +}, { +"duration": 1.5, "texture": ExtResource("584_81b6k") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("585_81b6k") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("586_7slog") }, { -"duration": 1.0, +"duration": 1.5, "texture": ExtResource("587_gr680") }, { "duration": 1.0, diff --git a/config/default_theme.tres b/config/default_theme.tres index 827ea038..ffca224a 100644 --- a/config/default_theme.tres +++ b/config/default_theme.tres @@ -86,6 +86,7 @@ region_rect = Rect2(22, 38, 40, 30) [sub_resource type="FontVariation" id="FontVariation_d3ufv"] fallbacks = Array[Font]([ExtResource("1_u1bqr")]) base_font = ExtResource("2_kajgs") +spacing_bottom = 1 [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ujvfm"] diff --git a/manager/archive_manager/assembled_archive.gd b/manager/archive_manager/assembled_archive.gd index 84bc7dea..fc571a10 100644 --- a/manager/archive_manager/assembled_archive.gd +++ b/manager/archive_manager/assembled_archive.gd @@ -55,6 +55,9 @@ func _init() -> void: prop_inventory_xxdie = PropInventory.new() if not prop_inventory_xxxdie: prop_inventory_xxxdie = PropInventory.new() + prop_inventory_xxdie.owner = "小小蝶" + prop_inventory_xxxdie.owner = "小小小蝶" + prop_inventory.owner = "default" func ground_archive(scene_name := current_scene) -> GroundArchive: diff --git a/manager/scene/global_functor.gd b/manager/scene/global_functor.gd index 13050f0c..981e135d 100644 --- a/manager/scene/global_functor.gd +++ b/manager/scene/global_functor.gd @@ -15,11 +15,8 @@ func c02_cat_play_with_door(): if knocking: return knocking = true - var knock_stream = preload("uid://7of24bqow07e") + var knock_stream = preload("uid://6q5qi1qon35r") + AudioManager.play_sfx(knock_stream) SceneManager.freeze_player(1.5, 6, true) - await get_tree().create_timer(0.8).timeout - AudioManager.play_sfx(knock_stream) - await get_tree().create_timer(0.3).timeout - AudioManager.play_sfx(knock_stream) - await get_tree().create_timer(0.5).timeout + await get_tree().create_timer(1.5).timeout knocking = false diff --git a/project.godot b/project.godot index bde2ba13..69396e06 100644 --- a/project.godot +++ b/project.godot @@ -182,7 +182,7 @@ space={ [internationalization] -locale/translations=PackedStringArray("res://asset/dialogue/c01.zh_CN.translation", "res://asset/dialogue/c02.zh_CN.translation", "res://asset/dialogue/inspect_content.zh_CN.translation", "res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/names.zh_CN.translation", "res://asset/dialogue/npc.zh_CN.translation", "res://asset/dialogue/c01.zh_SH.translation", "res://asset/dialogue/纯中文_无需本地化.zh_CN.translation") +locale/translations=PackedStringArray("res://asset/dialogue/c01.zh_CN.translation", "res://asset/dialogue/c02.zh_CN.translation", "res://asset/dialogue/inspect_content.zh_CN.translation", "res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/names.zh_CN.translation", "res://asset/dialogue/npc.zh_CN.translation", "res://asset/dialogue/c01.zh_SH.translation", "res://asset/dialogue/纯中文_无需本地化.zh_CN.translation", "res://asset/dialogue/c01.en.translation", "res://asset/dialogue/c03.zh_CN.translation", "res://asset/dialogue/c04.zh_CN.translation", "res://asset/dialogue/c05.zh_CN.translation", "res://asset/dialogue/c06.zh_CN.translation", "res://asset/dialogue/item_description.en.translation", "res://asset/dialogue/item_description.zh_SH.translation") locale/translations_pot_files=PackedStringArray("res://asset/dialogue/item_description.dialogue", "res://asset/dialogue/c01.dialogue", "res://asset/dialogue/c02.dialogue", "res://asset/dialogue/inspect_content.dialogue", "res://asset/dialogue/npc.dialogue", "res://asset/dialogue/c03.dialogue", "res://asset/dialogue/c04.dialogue", "res://asset/dialogue/c05.dialogue", "res://asset/dialogue/c06.dialogue", "res://asset/dialogue/纯中文_无需本地化.dialogue") locale/test="zh-Hans" locale/fallback="zh" diff --git a/scene/entity/closeup.gd b/scene/entity/closeup.gd index a5d7c6d9..2b848b9b 100644 --- a/scene/entity/closeup.gd +++ b/scene/entity/closeup.gd @@ -23,9 +23,12 @@ func _ready() -> void: func _close_up_interacted() -> void: if interacted_times == 1 and first_interact_os_key: + SceneManager.freeze_player(0) + sign_mark.display_sign = false var tween = await SceneManager.pop_os_with_str(first_interact_os_key) tween.tween_interval(0.5) tween.tween_callback(display) + tween.tween_callback(func(): sign_mark.display_sign = true) else: display() diff --git a/scene/entity/local_inspectable.gd b/scene/entity/local_inspectable.gd index 241d65b0..92582df7 100644 --- a/scene/entity/local_inspectable.gd +++ b/scene/entity/local_inspectable.gd @@ -11,7 +11,11 @@ signal sign_mark_offset_updated enum { STATUS_NORAML, STATUS_TRANSITIONING, STATUS_INSPECTING_COVER, STATUS_INSPECTING_NOTES } - +@export var enabled := true: + set(val): + enabled = val + if is_node_ready() and not Engine.is_editor_hint(): + sign_mark.enabled = val # sign_mark 节点在 ready 时会直接读取 @export var sign_mark_offset := Vector2.ZERO: set(val): @@ -28,7 +32,6 @@ enum { STATUS_NORAML, STATUS_TRANSITIONING, STATUS_INSPECTING_COVER, STATUS_INSP notify_property_list_changed() var content_key: String = "" - @onready var sign_mark = %Sign as Sign @onready var area2d = %Area2D as Area2D @@ -58,6 +61,7 @@ var tried_times: int: if tried_times >= 1 and sign_mark: sign_mark.sprite2d.texture = note_sign_texture + func _ready() -> void: $InspectLayer.layer = GlobalConfig.CANVAS_LAYER_PROP_INSPECTOR container.modulate.a = 0.0 @@ -67,7 +71,7 @@ func _ready() -> void: cover_rect.texture = texture_cover if Engine.is_editor_hint(): return - + sign_mark.enabled = enabled # setup default value ground_archive = ArchiveManager.archive.ground_archive() tried_times = ground_archive.get_value(name, "tried_times", 0) diff --git a/scene/entity/local_inspectable.tscn b/scene/entity/local_inspectable.tscn index 43795165..bc8f8cfc 100644 --- a/scene/entity/local_inspectable.tscn +++ b/scene/entity/local_inspectable.tscn @@ -8,15 +8,12 @@ [ext_resource type="PackedScene" uid="uid://c4tipnj1cr1j3" path="res://scene/entity/ux/sign.tscn" id="4_do8tr"] [ext_resource type="Texture2D" uid="uid://dwgxa5j6602vv" path="res://asset/art/ui/prop/inspect文本衬底蒙版.png" id="6_q18ff"] [ext_resource type="FontVariation" uid="uid://1ryw42kej6lv" path="res://config/font_ui.tres" id="7_ianbs"] +[ext_resource type="Texture2D" uid="uid://f186lvt5y2ql" path="res://asset/art/ui/prop/inspect背景遮罩.png" id="7_xawjo"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_4fuic"] resource_local_to_scene = true size = Vector2(20, 70) -[sub_resource type="LabelSettings" id="LabelSettings_c3c2j"] -line_spacing = 1.0 -font_size = 11 - [node name="LocalInspectable" type="Sprite2D"] script = ExtResource("1_85el0") note_sign_texture = ExtResource("2_3pauf") @@ -70,6 +67,13 @@ grow_horizontal = 2 grow_vertical = 2 mouse_filter = 2 +[node name="BGMask" type="TextureRect" parent="InspectLayer/Root/Container"] +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +mouse_filter = 2 +texture = ExtResource("7_xawjo") + [node name="Cover" type="TextureRect" parent="InspectLayer/Root/Container"] unique_name_in_owner = true layout_mode = 2 @@ -84,7 +88,6 @@ z_index = 100 custom_minimum_size = Vector2(130, 0) layout_mode = 2 size_flags_horizontal = 4 -label_settings = SubResource("LabelSettings_c3c2j") vertical_alignment = 1 autowrap_mode = 3 diff --git a/scene/ground/ground.tscn b/scene/ground/ground.tscn index 39b51fa6..d9d60dbb 100644 --- a/scene/ground/ground.tscn +++ b/scene/ground/ground.tscn @@ -97,7 +97,6 @@ height = 0.5 [node name="FootstepAudioPlayer" type="AudioStreamPlayer" parent="."] unique_name_in_owner = true -volume_db = -8.0 bus = &"game_sfx" script = ExtResource("5_7mb2q") metadata/_custom_type_script = "uid://dpnny2y808k71" diff --git a/scene/ground/scene/c02/s02_animation.gd b/scene/ground/scene/c02/s02_animation.gd index fb662e3b..30ae5c9d 100644 --- a/scene/ground/scene/c02/s02_animation.gd +++ b/scene/ground/scene/c02/s02_animation.gd @@ -42,6 +42,7 @@ func _on_ground_ready() -> void: if data.flyer_shaven: flyer.enabled = false flyer.visible = false + $"../DeployLayer/青岛啤酒".enabled = true else: flyer.exit.connect(_on_flyer_exit) music_box = $"../DeployLayer/Closeup八音盒" @@ -62,6 +63,7 @@ func _oneshot_wind(): func _on_flyer_exit(arg): if arg: + $"../DeployLayer/青岛啤酒".enabled = true set_data("flyer_shaven", true) flyer.enabled = false flyer.visible = false diff --git a/scene/ground/scene/c02/s02_过道.tscn b/scene/ground/scene/c02/s02_过道.tscn index 37f0af6e..0d900200 100644 --- a/scene/ground/scene/c02/s02_过道.tscn +++ b/scene/ground/scene/c02/s02_过道.tscn @@ -1,14 +1,14 @@ -[gd_scene load_steps=30 format=3 uid="uid://brck77w81fhvc"] +[gd_scene load_steps=31 format=3 uid="uid://brck77w81fhvc"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_wrr6r"] [ext_resource type="Script" uid="uid://bfrgnmde3hjn0" path="res://scene/ground/scene/c02/s02_animation.gd" id="2_5p8ev"] [ext_resource type="PackedScene" uid="uid://byj234hen4btr" path="res://scene/entity/audio/sfx.tscn" id="3_fvldj"] [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="3_fy0o1"] [ext_resource type="Texture2D" uid="uid://5428j51dwarc" path="res://asset/art/scene/c02/s02_大门过道/bg_过道背景.png" id="3_gjwum"] +[ext_resource type="AudioStream" uid="uid://o7fj0r0fbm1h" path="res://asset/audio/sfx/交互/第一章/sfx_冷飕飕.wav" id="4_36l5t"] [ext_resource type="SpriteFrames" uid="uid://b7fhheih1hbvf" path="res://config/animation/entity_sprite_frames.tres" id="4_wbif8"] [ext_resource type="Texture2D" uid="uid://r0n7qy4kr3w2" path="res://asset/art/ui/action_mark/UI场景切换.png" id="5_m1xet"] [ext_resource type="AudioStream" uid="uid://bew3slewru6j0" path="res://asset/audio/sfx/环境音/第一章/02_进门过道.wav" id="6_36l5t"] -[ext_resource type="Texture2D" uid="uid://ceijv5l0prppa" path="res://asset/art/prop/c02/海报(小)/除鼠双杰.png" id="6_gjwum"] [ext_resource type="Texture2D" uid="uid://b8pcnqvdddo5g" path="res://asset/art/prop/c02/海报特写/除鼠二杰.png" id="7_jg8g0"] [ext_resource type="Texture2D" uid="uid://cvgw2mxrlr6io" path="res://asset/art/scene/c02/旧版/s02_走道/ux_进门鼠疫海报yz.png" id="7_wdwbi"] [ext_resource type="Texture2D" uid="uid://5pl1b7cor715" path="res://asset/art/scene/c02/旧版/s02_走道/e_纸人.png" id="7_xsghn"] @@ -20,6 +20,7 @@ [ext_resource type="PackedScene" uid="uid://ci5anaxsa1apl" path="res://scene/entity/local_inspectable.tscn" id="12_0fckv"] [ext_resource type="PackedScene" uid="uid://cw3q5pvciumil" path="res://scene/entity/interactable.tscn" id="13_ck13g"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="14_jg8g0"] +[ext_resource type="Texture2D" uid="uid://cyctvbeqxqvpb" path="res://asset/art/prop/c02/海报特写/青岛啤酒.png" id="16_vqhm5"] [ext_resource type="Texture2D" uid="uid://8otjg8gn0m6p" path="res://asset/art/gif/c02_公寓过道/眨眼睛/0.png" id="17_m1xet"] [ext_resource type="PackedScene" uid="uid://cxw5rovg5mu1a" path="res://scene/ground/script/c02/s00_煤油灯.tscn" id="17_mpkj1"] [ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="19_6wwyd"] @@ -64,7 +65,7 @@ data = { oneshot_animation = "" [node name="冷飕飕Sfx" parent="Ground/AnimationPlayer" index="0" instance=ExtResource("3_fvldj")] -stream = null +stream = ExtResource("4_36l5t") mode = "交互与效果音" [node name="背景音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] @@ -117,25 +118,30 @@ position = Vector2(177, 42) hook_os_key = "c02_太暗了" [node name="海报1" parent="Ground/DeployLayer" index="5" instance=ExtResource("12_0fckv")] -position = Vector2(211, -33) -texture = ExtResource("6_gjwum") +position = Vector2(203, -31) sign_mark_offset = Vector2(-1.58, 8.6) content_centered = true texture_cover = ExtResource("7_jg8g0") content_key = "c02_海报1" [node name="Closeup刮海报" parent="Ground/DeployLayer" index="6" instance=ExtResource("19_6wwyd")] -position = Vector2(252, -27) +position = Vector2(253, -31) texture = ExtResource("10_jg8g0") first_interact_os_key = "c02_海报_剪辫子侦探" packed_scene = ExtResource("11_jg8g0") -[node name="鼠疫海报" parent="Ground/DeployLayer" index="7" instance=ExtResource("12_0fckv")] +[node name="青岛啤酒" parent="Ground/DeployLayer" index="7" instance=ExtResource("12_0fckv")] +position = Vector2(253, -31) +enabled = false +texture_cover = ExtResource("16_vqhm5") +content_key = "c02_青岛啤酒" + +[node name="鼠疫海报" parent="Ground/DeployLayer" index="8" instance=ExtResource("12_0fckv")] position = Vector2(439, -29) texture_cover = ExtResource("7_wdwbi") content_key = "c02_鼠疫海报" -[node name="Ambush纸人" parent="Ground/DeployLayer" index="8" instance=ExtResource("8_52as8")] +[node name="Ambush纸人" parent="Ground/DeployLayer" index="9" instance=ExtResource("8_52as8")] visible = false position = Vector2(113, 44) texture = ExtResource("7_xsghn") @@ -161,13 +167,13 @@ stream = ExtResource("11_u68d7") bus = &"game_sfx" script = ExtResource("14_jg8g0") -[node name="Ambush杂物堆" parent="Ground/DeployLayer" index="9" instance=ExtResource("8_52as8")] +[node name="Ambush杂物堆" parent="Ground/DeployLayer" index="10" instance=ExtResource("8_52as8")] position = Vector2(387, 66) trigger_mode = "interact" freeze_time = 1.0 hook_method = "lumber_interacted" -[node name="杂物眨眼睛" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="10"] +[node name="杂物眨眼睛" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"] visible = false light_mask = 5 position = Vector2(269, 38) @@ -180,34 +186,34 @@ energy = 3.0 range_item_cull_mask = 4 texture = ExtResource("17_m1xet") -[node name="Note老鼠洞" parent="Ground/DeployLayer" index="11" instance=ExtResource("3_fy0o1")] +[node name="Note老鼠洞" parent="Ground/DeployLayer" index="12" instance=ExtResource("3_fy0o1")] position = Vector2(507, 64) title_filter = "c02" note_key = "c02_老鼠洞" -[node name="老鼠拖鞋" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"] +[node name="老鼠拖鞋" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="13"] visible = false position = Vector2(498, 0) sprite_frames = ExtResource("19_q0axc") animation = &"老鼠托小鞋子" -[node name="Interactable小鞋子" parent="Ground/DeployLayer" index="13" instance=ExtResource("13_ck13g")] +[node name="Interactable小鞋子" parent="Ground/DeployLayer" index="14" instance=ExtResource("13_ck13g")] position = Vector2(498, 65) enabled = false mute_when_interacted = true -[node name="Ambush推小鞋子" parent="Ground/DeployLayer" index="14" instance=ExtResource("8_52as8")] +[node name="Ambush推小鞋子" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_52as8")] position = Vector2(525, 61) one_shot = false freeze_time = 1.0 hook_method = "check_if_show_shoes" -[node name="煤油灯" parent="Ground/DeployLayer" index="15" instance=ExtResource("17_mpkj1")] +[node name="煤油灯" parent="Ground/DeployLayer" index="16" instance=ExtResource("17_mpkj1")] position = Vector2(122, -15) gaslight_energy = 2.0 gaslight_ground_energy = 0.0 -[node name="Closeup八音盒" parent="Ground/DeployLayer" index="16" instance=ExtResource("19_6wwyd")] +[node name="Closeup八音盒" parent="Ground/DeployLayer" index="17" instance=ExtResource("19_6wwyd")] position = Vector2(533, 65) packed_scene = ExtResource("10_ifae7") diff --git a/scene/ground/scene/c02/s03_animation.gd b/scene/ground/scene/c02/s03_animation.gd index 831a997d..2884da9a 100644 --- a/scene/ground/scene/c02/s03_animation.gd +++ b/scene/ground/scene/c02/s03_animation.gd @@ -39,6 +39,8 @@ func _on_ground_ready() -> void: $"../DeployLayer/Ambush偷听对话".enabled = false eavesdrop_window.visible = false + $"../DeployLayer/Closeup敲门游戏".exit.connect(_on_knock_exit) + counter = $"../DeployLayer/Interactable柜子" as Interactable2D counter.interacted.connect(_on_counter_interacted) if ArchiveManager.get_global_value("c02_counter_pushed_out"): @@ -97,10 +99,12 @@ func _on_ground_ready() -> void: var tween = create_tween() # 实现重力加速度效果的 y 移动,在 drop_duration 中移动到 final_y tween.tween_method(drop_shoe.bind(y1, y2), 0.0, 1.0, drop_duration) + await tween.finished + # 落地音效 + $"Sfx小鞋落地".play() + tween = create_tween() tween.tween_property(fg, "modulate:a", 0.0, 1.5) await tween.finished - #TODO 落地音效 - SceneManager.pop_debug_dialog_info("音效", "小鞋子落地") play("镜头上下运动") $"../BGSprite2D/无头小蝶".play() $"../CameraFocusMarker".limit_top -= 1000 @@ -127,6 +131,12 @@ func _on_gate_interacted() -> void: gate.get_node("Wall/CollisionShape2D").disabled = true +func _on_knock_exit(arg): + if arg: + await create_tween().tween_interval(1.0).finished + SceneManager.pop_os_with_str("c02_敲门_肉掉落") + + func shocking_lighting() -> void: var root = $"../DeployLayer/闷雷_纸人闪现" as Node2D var normal_ppl = root.get_node("排队常人") as Sprite2D diff --git a/scene/ground/scene/c02/s03_院子.tscn b/scene/ground/scene/c02/s03_院子.tscn index 930c9403..3f56eaef 100644 --- a/scene/ground/scene/c02/s03_院子.tscn +++ b/scene/ground/scene/c02/s03_院子.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=76 format=3 uid="uid://djc2uaefhmu7"] +[gd_scene load_steps=78 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_animation.gd" id="2_dt5aj"] @@ -14,6 +14,7 @@ [ext_resource type="AudioStream" uid="uid://civuwccn6v6yk" path="res://asset/audio/sfx/交互/第一章/sfx_闷雷声.wav" id="6_vddfx"] [ext_resource type="Texture2D" uid="uid://bxqetnlx0bpv4" path="res://asset/art/scene/c02/门_贴图/1012保卫科.png" id="6_ygnci"] [ext_resource type="Texture2D" uid="uid://cmm6oxlbl2wps" path="res://asset/art/scene/c02/门_贴图/1013肉铺.png" id="7_c3f8o"] +[ext_resource type="AudioStream" uid="uid://dukcyf5fq4drj" path="res://asset/audio/sfx/交互/第一章/sfx_鞋子掉了.wav" id="7_df1yo"] [ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="7_em2ma"] [ext_resource type="Texture2D" uid="uid://bs8bdad5ak0m0" path="res://asset/art/scene/c02/s03_公寓一楼院子/铁门/关闭状态.png" id="7_gd6xp"] [ext_resource type="Texture2D" uid="uid://b1tnkshmv7r3b" path="res://asset/art/scene/c02/门_贴图/院子房间3.png" id="8_crgo6"] @@ -21,6 +22,7 @@ [ext_resource type="PackedScene" uid="uid://cw3q5pvciumil" path="res://scene/entity/interactable.tscn" id="8_xt8j0"] [ext_resource type="Texture2D" uid="uid://bgpf35bhrkl86" path="res://asset/art/scene/c02/s03_公寓一楼院子/铁门/打开 底层.png" id="9_liq0c"] [ext_resource type="Texture2D" uid="uid://cvtbiefbffjd7" path="res://asset/art/scene/c02/门_贴图/1015房间.png" id="9_vddfx"] +[ext_resource type="Texture2D" uid="uid://diuh52qo2o6pa" path="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png" id="10_3nako"] [ext_resource type="PackedScene" uid="uid://dnbutraty2285" path="res://scene/entity/partical/particals_ash_vertical.tscn" id="10_c3f8o"] [ext_resource type="PackedScene" uid="uid://cxw5rovg5mu1a" path="res://scene/ground/script/c02/s00_煤油灯.tscn" id="10_jme4f"] [ext_resource type="Texture2D" uid="uid://dooaferyy44rs" path="res://asset/art/scene/c02/s03_公寓一楼院子/e_前侧楼梯.png" id="10_ud2jg"] @@ -370,6 +372,12 @@ bus = &"game_sfx" script = ExtResource("4_ygnci") metadata/_custom_type_script = "uid://rq6w1vuhuq1m" +[node name="Sfx小鞋落地" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"] +stream = ExtResource("7_df1yo") +bus = &"game_sfx" +script = ExtResource("4_ygnci") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + [node name="BGSprite2D" parent="Ground" index="1"] light_mask = 5 texture = ExtResource("3_sqv8l") @@ -391,7 +399,16 @@ matched_sign_texture = null position = Vector2(2286, 16) matched_sign_texture = null -[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("5_00b7a")] +[node name="火灾背景" type="Sprite2D" parent="Ground/DeployLayer" index="2"] +modulate = Color(1, 1, 1, 0) +position = Vector2(1189, 0) +texture = ExtResource("6_d7h4s") + +[node name="禁火等墙面文字" type="Sprite2D" parent="Ground/DeployLayer" index="3"] +position = Vector2(955, 5) +texture = ExtResource("10_3nako") + +[node name="portal_1" parent="Ground/DeployLayer" index="4" instance=ExtResource("5_00b7a")] position = Vector2(200, 10) debug_note = "1012保卫科" portal_name = "1" @@ -400,7 +417,7 @@ target_portal = "left" status = "opened" matched_sign_texture = null -[node name="portal_2" parent="Ground/DeployLayer" index="3" instance=ExtResource("5_00b7a")] +[node name="portal_2" parent="Ground/DeployLayer" index="5" instance=ExtResource("5_00b7a")] position = Vector2(928, 7) debug_note = "一楼内侧过道 " @@ -409,7 +426,7 @@ target_scene = "c02_s05" target_portal = "left" matched_sign_texture = null -[node name="Note血迹" parent="Ground/DeployLayer" index="4" instance=ExtResource("6_t48d1")] +[node name="Note血迹" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_t48d1")] position = Vector2(523, 78) note_key = "notes_干掉的血迹" @@ -420,7 +437,7 @@ position = Vector2(132, 10) sprite_frames = ExtResource("4_gd6xp") animation = &"肉铺门口血迹" -[node name="portal_3" parent="Ground/DeployLayer" index="5" instance=ExtResource("5_00b7a")] +[node name="portal_3" parent="Ground/DeployLayer" index="7" instance=ExtResource("5_00b7a")] position = Vector2(1704, 14) debug_note = "空房间 1014" portal_name = "3" @@ -429,7 +446,7 @@ target_portal = "left" status = "opened" matched_sign_texture = null -[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="6"] +[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="8"] [node name="灯笼" type="Sprite2D" parent="Ground/DeployLayer/灯笼"] position = Vector2(1644, -86) @@ -476,7 +493,7 @@ color = Color(1, 0.0980392, 0, 1) energy = 0.7 texture = SubResource("GradientTexture2D_kyfht") -[node name="新背景_奠" type="Node2D" parent="Ground/DeployLayer" index="7"] +[node name="新背景_奠" type="Node2D" parent="Ground/DeployLayer" index="9"] visible = false [node name="奠1" type="Sprite2D" parent="Ground/DeployLayer/新背景_奠"] @@ -505,7 +522,7 @@ position = Vector2(898, -162) z_index = 15 position = Vector2(1964, -209) -[node name="闷雷_纸人闪现" type="Node2D" parent="Ground/DeployLayer" index="8"] +[node name="闷雷_纸人闪现" type="Node2D" parent="Ground/DeployLayer" index="10"] visible = false [node name="Ambush闷雷纸人" parent="Ground/DeployLayer/闷雷_纸人闪现" instance=ExtResource("25_iyaiw")] @@ -532,16 +549,11 @@ range_layer_max = 2 range_item_cull_mask = 4 texture = SubResource("GradientTexture2D_3nako") -[node name="Ambush要下雨了" parent="Ground/DeployLayer" index="9" instance=ExtResource("25_iyaiw")] +[node name="Ambush要下雨了" parent="Ground/DeployLayer" index="11" instance=ExtResource("25_iyaiw")] position = Vector2(1611, 46) hook_os_key = "c02_院子_要下雨" -[node name="火灾背景" type="Sprite2D" parent="Ground/DeployLayer" index="10"] -modulate = Color(1, 1, 1, 0) -position = Vector2(1189, 0) -texture = ExtResource("6_d7h4s") - -[node name="Pickable小鞋子" parent="Ground/DeployLayer" index="11" instance=ExtResource("7_em2ma")] +[node name="Pickable小鞋子" parent="Ground/DeployLayer" index="12" instance=ExtResource("7_em2ma")] position = Vector2(809, 75) sign_mark_offset = Vector2(0, -16.88) enabled = false @@ -552,7 +564,7 @@ position = Vector2(0, -7) scale = Vector2(0.15, 0.15) texture = ExtResource("8_plfv5") -[node name="Interactable铁门" parent="Ground/DeployLayer" index="12" instance=ExtResource("8_xt8j0")] +[node name="Interactable铁门" parent="Ground/DeployLayer" index="13" instance=ExtResource("8_xt8j0")] light_mask = 5 position = Vector2(1222, 28) texture = ExtResource("7_gd6xp") @@ -570,7 +582,7 @@ collision_mask = 0 [node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/DeployLayer/Interactable铁门/Wall"] shape = SubResource("RectangleShape2D_mdix7") -[node name="Note算命摊位" parent="Ground/DeployLayer" index="13" instance=ExtResource("6_t48d1")] +[node name="Note算命摊位" parent="Ground/DeployLayer" index="14" instance=ExtResource("6_t48d1")] position = Vector2(725, 45) note_key = "c02_院子_算命摊位" @@ -578,13 +590,13 @@ note_key = "c02_院子_算命摊位" position = Vector2(0, 18) texture = ExtResource("6_1tart") -[node name="煤油灯" parent="Ground/DeployLayer" index="14" instance=ExtResource("10_jme4f")] +[node name="煤油灯" parent="Ground/DeployLayer" index="15" instance=ExtResource("10_jme4f")] position = Vector2(290, 1) gaslight_energy = 1.5 gaslight_ground_energy = 0.7 mute_when_interacted = false -[node name="煤油灯2" parent="Ground/DeployLayer" index="15" instance=ExtResource("10_jme4f")] +[node name="煤油灯2" parent="Ground/DeployLayer" index="16" instance=ExtResource("10_jme4f")] position = Vector2(610, 1) gaslight_texture = ExtResource("11_g0qhj") ground_light_texture = ExtResource("12_ni5ro") @@ -592,7 +604,7 @@ gaslight_energy = 1.5 gaslight_ground_energy = 0.7 mute_when_interacted = false -[node name="煤油灯3" parent="Ground/DeployLayer" index="16" instance=ExtResource("10_jme4f")] +[node name="煤油灯3" parent="Ground/DeployLayer" index="17" instance=ExtResource("10_jme4f")] position = Vector2(857, 1) gaslight_texture = ExtResource("13_hw832") ground_light_texture = ExtResource("14_7pq5y") @@ -600,45 +612,45 @@ gaslight_energy = 1.5 gaslight_ground_energy = 0.7 mute_when_interacted = false -[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="17"] +[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="18"] self_modulate = Color(0.739288, 0.739288, 0.739288, 1) light_mask = 5 z_index = 10 position = Vector2(2062, 60) texture = ExtResource("21_4n8vm") -[node name="药车" type="Sprite2D" parent="Ground/DeployLayer" index="18"] +[node name="药车" type="Sprite2D" parent="Ground/DeployLayer" index="19"] light_mask = 5 z_index = 10 position = Vector2(1025, 27) texture = ExtResource("22_3y5s5") -[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="19" instance=ExtResource("23_81juy")] +[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="20" instance=ExtResource("23_81juy")] position = Vector2(466, 3) packed_scene = ExtResource("24_0o4rt") -[node name="Closeup井" parent="Ground/DeployLayer" index="20" instance=ExtResource("23_81juy")] +[node name="Closeup井" parent="Ground/DeployLayer" index="21" instance=ExtResource("23_81juy")] z_index = 6 position = Vector2(2063, 50) packed_scene = ExtResource("26_yy4fp") -[node name="Ambush惊悚闪电" parent="Ground/DeployLayer" index="21" instance=ExtResource("25_iyaiw")] +[node name="Ambush惊悚闪电" parent="Ground/DeployLayer" index="22" instance=ExtResource("25_iyaiw")] position = Vector2(1319, 40) hook_method = "shocking_lighting" -[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="22" instance=ExtResource("25_iyaiw")] +[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="23" instance=ExtResource("25_iyaiw")] position = Vector2(1836, 7) trigger_mode = "interact" one_shot = false hook_method = "eavesdrop" -[node name="李氏赖子房间人影" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="23"] +[node name="李氏赖子房间人影" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="24"] position = Vector2(1835, -16) sprite_frames = SubResource("SpriteFrames_0o4rt") autoplay = "default" frame_progress = 0.643855 -[node name="Npc井边疯子" parent="Ground/DeployLayer" index="24" instance=ExtResource("35_plfv5")] +[node name="Npc井边疯子" parent="Ground/DeployLayer" index="25" instance=ExtResource("35_plfv5")] z_index = 10 position = Vector2(2037, 67) sprite_frames = SubResource("SpriteFrames_kyfht") @@ -664,7 +676,7 @@ position = Vector2(-11, -3) shape = SubResource("RectangleShape2D_bbhbr") disabled = true -[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="25"] +[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="26"] visible = false position = Vector2(2154, 60) @@ -729,7 +741,7 @@ collision_mask = 0 shape = SubResource("RectangleShape2D_d7h4s") disabled = true -[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="26"] +[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="27"] visible = false [node name="右窗" type="AnimatedSprite2D" parent="Ground/DeployLayer/火灾"] @@ -900,7 +912,7 @@ offset_bottom = -23.0 [node name="CollisionShape2D" parent="Ground/DeployLayer/火灾/Ambush等待的小蝉/Area2D" index="0"] shape = SubResource("RectangleShape2D_em2ma") -[node name="Interactable柜子" parent="Ground/DeployLayer" index="27" instance=ExtResource("8_xt8j0")] +[node name="Interactable柜子" parent="Ground/DeployLayer" index="28" instance=ExtResource("8_xt8j0")] visible = false position = Vector2(1772, 48) texture = ExtResource("32_cpifc") @@ -916,7 +928,7 @@ animation = &"箱子着火" autoplay = "箱子着火" frame_progress = 0.453645 -[node name="最终跑路" type="RigidBody2D" parent="Ground/DeployLayer" index="28"] +[node name="最终跑路" type="RigidBody2D" parent="Ground/DeployLayer" index="29"] visible = false position = Vector2(2150, 30) collision_layer = 4 diff --git a/scene/ground/scene/c02/s04_animation.gd b/scene/ground/scene/c02/s04_animation.gd index 027b13cc..dacced57 100644 --- a/scene/ground/scene/c02/s04_animation.gd +++ b/scene/ground/scene/c02/s04_animation.gd @@ -4,8 +4,7 @@ extends AnimationRoot # 覆盖该方法 func _default_data() -> Dictionary: - return { - } + return {} func _ready() -> void: @@ -13,28 +12,33 @@ func _ready() -> void: if Engine.is_editor_hint(): return -var closeup_tin_coin + +var closeup_tin_coin var little_hand + func _on_ground_ready() -> void: closeup_tin_coin = $"../DeployLayer/Closeup折锡纸" as Closeup2D if not ArchiveManager.get_global_value("c02_tin_coin_taken"): closeup_tin_coin.exit.connect(_on_closeup_tin_coin_exited) - + little_hand = $"../DeployLayer/小手讨东西" if little_hand.tried_times == 0: little_hand.interacted.connect(_on_little_hand_first_interacted, CONNECT_ONE_SHOT) + func _on_little_hand_first_interacted() -> void: # 9 小手交互,吓摔倒 little_hand.enabled = false var duration = 3.0 SceneManager.freeze_player(duration, 9) + get_tree().create_timer(1.5).timeout.connect($"Sfx摔倒".play) await get_tree().create_timer(duration).timeout SceneManager.release_player() - + little_hand.enabled = true + func _on_closeup_tin_coin_exited(arg = null): if arg == true: ArchiveManager.set_global_entry("c02_tin_coin_taken", true) diff --git a/scene/ground/scene/c02/s04_保卫科.tscn b/scene/ground/scene/c02/s04_保卫科.tscn index d84d503a..da22e592 100644 --- a/scene/ground/scene/c02/s04_保卫科.tscn +++ b/scene/ground/scene/c02/s04_保卫科.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=20 format=3 uid="uid://bivc5cdap370p"] +[gd_scene load_steps=21 format=3 uid="uid://bivc5cdap370p"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_2jej0"] [ext_resource type="Script" uid="uid://dmhh4g47bdxxy" path="res://scene/ground/scene/c02/s04_animation.gd" id="2_jyere"] @@ -7,6 +7,7 @@ [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_ffvrp"] [ext_resource type="SpriteFrames" uid="uid://c2sjavnptjn" path="res://asset/art/gif/c02_保卫科/c02_保卫科_frames.tres" id="4_svuj3"] [ext_resource type="Texture2D" uid="uid://bnyf8m63ltgh0" path="res://asset/art/scene/c02/s04_保卫科/l_香.png" id="5_cy26p"] +[ext_resource type="AudioStream" uid="uid://c26x8f18w6is0" path="res://asset/audio/sfx/旧版/c02/撞到柜子.mp3" id="5_xy3nq"] [ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="6_66gue"] [ext_resource type="PackedScene" uid="uid://b8i6tqwdvvddy" path="res://scene/ground/script/c02/花名册.tscn" id="6_fvlg0"] [ext_resource type="Texture2D" uid="uid://cs14llkvr3fg8" path="res://asset/art/scene/c02/s04_保卫科/弹珠墙面涂鸦提示.png" id="6_gk1h4"] @@ -49,6 +50,12 @@ mode = "场景背景音" "感应玩家操作" = false metadata/_custom_type_script = "uid://rq6w1vuhuq1m" +[node name="Sfx摔倒" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] +stream = ExtResource("5_xy3nq") +bus = &"game_sfx" +script = ExtResource("4_ffvrp") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + [node name="BGSprite2D" parent="Ground" index="1"] light_mask = 5 position = Vector2(47, 2) diff --git a/scene/ground/scene/c02/s05_animation.gd b/scene/ground/scene/c02/s05_animation.gd index 411011b8..98d0acf0 100644 --- a/scene/ground/scene/c02/s05_animation.gd +++ b/scene/ground/scene/c02/s05_animation.gd @@ -47,12 +47,14 @@ func mouse_pick_meat() -> void: if not pick_meat_amush_allowed: return pick_meat_amush_allowed = false - SceneManager.freeze_player(1.5) + SceneManager.freeze_player(2.0) # 标记为已掉落 ArchiveManager.set_global_entry("c02_meat_dropping", false) var sprite = $"../DeployLayer/老鼠叼肉" sprite.visible = true sprite.play() + await sprite.animation_finished + SceneManager.pop_os_with_str("c02_敲门_老鼠叼肉") func _on_madman_interacted() -> void: diff --git a/scene/ground/scene/c02/s05_一楼内侧楼道.tscn b/scene/ground/scene/c02/s05_一楼内侧楼道.tscn index cc6deeed..e263f80e 100644 --- a/scene/ground/scene/c02/s05_一楼内侧楼道.tscn +++ b/scene/ground/scene/c02/s05_一楼内侧楼道.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=29 format=3 uid="uid://cp8d3ag5nbjq0"] +[gd_scene load_steps=36 format=3 uid="uid://cp8d3ag5nbjq0"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_6w6et"] [ext_resource type="Script" uid="uid://dydpmjpcvt3v1" path="res://scene/ground/scene/c02/s05_animation.gd" id="2_70lf6"] @@ -21,6 +21,8 @@ [ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="17_aofps"] [ext_resource type="SpriteFrames" uid="uid://cvwdqa8gyqj4g" path="res://asset/art/gif/c02_老鼠拖肉/c02_老鼠拖肉_frames.tres" id="17_bk7rf"] [ext_resource type="Texture2D" uid="uid://d1etd7hr23rir" path="res://asset/art/scene/c02/s05_一楼内侧楼道/e_掉落的肉.png" id="18_bk7rf"] +[ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="21_heq1x"] +[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="22_laquj"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_n48fn"] @@ -55,6 +57,42 @@ height = 10 fill = 1 fill_from = Vector2(0.5, 0.5) +[sub_resource type="AtlasTexture" id="AtlasTexture_chbaa"] +atlas = ExtResource("21_heq1x") +region = Rect2(0, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_th1ek"] +atlas = ExtResource("21_heq1x") +region = Rect2(6, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_to1d1"] +atlas = ExtResource("21_heq1x") +region = Rect2(12, 0, 6, 14) + +[sub_resource type="AtlasTexture" id="AtlasTexture_nx6jy"] +atlas = ExtResource("21_heq1x") +region = Rect2(18, 0, 6, 14) + +[sub_resource type="SpriteFrames" id="SpriteFrames_heq1x"] +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="S05" type="Node2D"] metadata/_edit_horizontal_guides_ = [98.0] @@ -172,11 +210,16 @@ position = Vector2(394, 26) title_filter = "c02" note_key = "c02_一楼楼道被挡住" -[node name="打开的垃圾桶盖" type="Sprite2D" parent="Ground/DeployLayer" index="8"] +[node name="Note垃圾通道" parent="Ground/DeployLayer" index="8" instance=ExtResource("10_8t4w6")] +position = Vector2(660, -1) +title_filter = "c02" +note_key = "c02_描述垃圾通道" + +[node name="打开的垃圾桶盖" type="Sprite2D" parent="Ground/DeployLayer" index="9"] position = Vector2(660, 8) texture = ExtResource("15_s2g5k") -[node name="Interactable粘鼠板" parent="Ground/DeployLayer" index="9" instance=ExtResource("13_uj0pt")] +[node name="Interactable粘鼠板" parent="Ground/DeployLayer" index="10" instance=ExtResource("13_uj0pt")] position = Vector2(604, 81) disable_prop_after_interacted = true interacted_texture = ExtResource("16_jknyg") @@ -199,18 +242,18 @@ position = Vector2(0, 5) sprite_frames = ExtResource("17_bk7rf") animation = &"老鼠被黏住死亡" -[node name="Ambush老鼠叼肉" parent="Ground/DeployLayer" index="10" instance=ExtResource("8_rcuxq")] -position = Vector2(592, 81) +[node name="Ambush老鼠叼肉" parent="Ground/DeployLayer" index="11" instance=ExtResource("8_rcuxq")] +position = Vector2(585, 80) one_shot = false hook_method = "mouse_pick_meat" -[node name="老鼠叼肉" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"] +[node name="老鼠叼肉" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"] visible = false position = Vector2(687, 69) sprite_frames = ExtResource("17_bk7rf") animation = &"奇怪的肉被拖进去动画" -[node name="Pickable掉落的肉" parent="Ground/DeployLayer" index="12" instance=ExtResource("17_aofps")] +[node name="Pickable掉落的肉" parent="Ground/DeployLayer" index="13" instance=ExtResource("17_aofps")] visible = false position = Vector2(668, 85) texture = ExtResource("18_bk7rf") @@ -218,6 +261,19 @@ sign_mark_offset = Vector2(0, -9.86) enabled = false prop_key = "prop_奇怪的肉" +[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="14"] +self_modulate = Color(0.611765, 0.611765, 0.611765, 1) +position = Vector2(627.8, 79.6172) +sprite_frames = SubResource("SpriteFrames_heq1x") +autoplay = "default" + +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer" index="15"] +position = Vector2(627.8, 66.8) +color = Color(0.999971, 0.912551, 0.842208, 1) +energy = 1.2 +texture = ExtResource("22_laquj") +texture_scale = 0.3 + [node name="MainPlayer" parent="Ground" index="4"] position = Vector2(41, 98) diff --git a/scene/ground/scene/c02/s08_animation.gd b/scene/ground/scene/c02/s08_animation.gd index 6d1e002e..f8c11b11 100644 --- a/scene/ground/scene/c02/s08_animation.gd +++ b/scene/ground/scene/c02/s08_animation.gd @@ -38,7 +38,10 @@ func _on_ground_ready() -> void: if gaslight.interacted_times > 0: ambush_lookback.enabled = true else: - gaslight.interacted.connect(func(): ambush_lookback.enabled = true) + gaslight.interacted.connect(func(): + ambush_lookback.enabled = true + $"../DeployLayer/癞子偷窥/Sfx2D癞子呼吸".play() + ) if looked_back: gaslight.enabled = false gaslight.visible = false @@ -163,6 +166,9 @@ func look_back_hole(): tween.tween_property(camera, "limit_right", room_camera_r_limit + 100, 1.0) tween.parallel().tween_property(camera, "zoom_ratio", 1.1, 1.0) tween.tween_callback(func(): occluder.visible = false) + tween.tween_interval(0.5) + tween.tween_callback($"Sfx癞子对视惊吓".play) + tween.tween_interval(0.5) tween.tween_callback(_on_shocked) tween.tween_property(darker_light, "energy", 1.0, 3.0) tween.tween_property(camera, "limit_right", room_camera_r_limit, 1.0) @@ -171,10 +177,11 @@ func look_back_hole(): func _on_shocked(): SceneManager.pop_debug_dialog_info("音效", "惊吓") - $"Sfx癞子对视惊吓".play() SceneManager.freeze_player(0, 11, true) SceneManager.get_player().animation_finished.connect(_on_shocked_finished, CONNECT_ONE_SHOT) - await create_tween().tween_interval(1.1).finished + $"Sfx吹灭蜡烛".play() + await create_tween().tween_interval(0.6).finished + $"Sfx摔倒".play() # 熄火 gaslight.enabled = false gaslight.visible = false @@ -186,6 +193,7 @@ func _on_shocked(): light.energy = 0 create_tween().tween_property(light, "energy", 0.6, 1.5) $"../DeployLayer/Closeup画".enabled = false + $"../DeployLayer/癞子偷窥/Sfx2D癞子呼吸".stop() func _on_shocked_finished(): diff --git a/scene/ground/scene/c02/s08_瞎子卧室.tscn b/scene/ground/scene/c02/s08_瞎子卧室.tscn index d7015d18..5fe920ec 100644 --- a/scene/ground/scene/c02/s08_瞎子卧室.tscn +++ b/scene/ground/scene/c02/s08_瞎子卧室.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=34 format=3 uid="uid://ce2vyyg2reg52"] +[gd_scene load_steps=39 format=3 uid="uid://ce2vyyg2reg52"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_judx3"] [ext_resource type="Script" uid="uid://hbbgymjs5xte" path="res://scene/ground/scene/c02/s08_animation.gd" id="2_m4uw8"] @@ -7,9 +7,12 @@ [ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="4_1ws4i"] [ext_resource type="Texture2D" uid="uid://vqyhgyka3sfo" path="res://asset/art/scene/c02/s08_瞎子卧室/瞎子卧室前景.png" id="4_gx8oy"] [ext_resource type="AudioStream" uid="uid://dthm5gd1sc16" path="res://asset/audio/sfx/环境音/第一章/房间内部场景2.wav" id="4_vjjde"] +[ext_resource type="AudioStream" uid="uid://dk3e1w3n2snur" path="res://asset/audio/sfx/旧版/c02/纸人出现.mp3" id="5_0qeqe"] [ext_resource type="Texture2D" uid="uid://b5pwb4fm46sad" path="res://asset/art/scene/c02/s08_瞎子卧室/e_墙上纸张.png" id="5_f6mma"] [ext_resource type="Texture2D" uid="uid://7ay1ttob8qwm" path="res://asset/art/scene/c02/s08_瞎子卧室/e_床板.png" id="5_vjjde"] +[ext_resource type="AudioStream" uid="uid://c26x8f18w6is0" path="res://asset/audio/sfx/旧版/c02/撞到柜子.mp3" id="6_nnqdd"] [ext_resource type="SpriteFrames" uid="uid://3nas025c2c5u" path="res://asset/art/gif/c02_杂项/c02_杂项_frames.tres" id="7_j6ltr"] +[ext_resource type="AudioStream" uid="uid://dnk2cba1bwr4s" path="res://asset/audio/sfx/交互/第一章/风吹灭火.ogg" id="7_quq80"] [ext_resource type="Texture2D" uid="uid://dtyg0nugb2tnf" path="res://asset/art/ui/action_mark/UI探索.png" id="8_dkqw0"] [ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="10_a48k2"] [ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="10_f6mma"] @@ -24,6 +27,8 @@ [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="14_1ws4i"] [ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="17_5fx68"] [ext_resource type="Texture2D" uid="uid://dcot0rove27rd" path="res://asset/art/scene/c02/s08_瞎子卧室/e_粘鼠板.png" id="18_dkqw0"] +[ext_resource type="AudioStream" uid="uid://mff0udi3glb4" path="res://asset/audio/sfx/交互/第一章/瞎子房间癞子呼吸.wav" id="20_ujhuc"] +[ext_resource type="Script" uid="uid://wapo47a1oddf" path="res://scene/entity/audio/sfx2d.gd" id="21_0qeqe"] [sub_resource type="Animation" id="Animation_f6mma"] length = 0.001 @@ -112,17 +117,7 @@ data = { } oneshot_animation = "" -[node name="Sfx癞子对视惊吓" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"] -autoplay = true -bus = &"game_sfx" -script = ExtResource("3_t3h08") -mode = "场景背景音" -"自动开始" = true -"循环播放" = true -"感应玩家操作" = true -metadata/_custom_type_script = "uid://rq6w1vuhuq1m" - -[node name="背景音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] +[node name="背景音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"] stream = ExtResource("4_vjjde") autoplay = true bus = &"game_sfx" @@ -133,6 +128,25 @@ mode = "场景背景音" "感应玩家操作" = false metadata/_custom_type_script = "uid://rq6w1vuhuq1m" +[node name="Sfx癞子对视惊吓" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"] +stream = ExtResource("5_0qeqe") +volume_db = 2.0 +bus = &"game_sfx" +script = ExtResource("3_t3h08") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + +[node name="Sfx摔倒" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"] +stream = ExtResource("6_nnqdd") +bus = &"game_sfx" +script = ExtResource("3_t3h08") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + +[node name="Sfx吹灭蜡烛" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"] +stream = ExtResource("7_quq80") +bus = &"game_sfx" +script = ExtResource("3_t3h08") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + [node name="BGSprite2D" parent="Ground" index="1"] texture = ExtResource("3_iares") @@ -279,6 +293,16 @@ sprite_frames = ExtResource("13_t3h08") animation = &"c02_王癞子_蹲着呼吸" autoplay = "c02_王癞子_蹲着呼吸" +[node name="Sfx2D癞子呼吸" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/癞子偷窥"] +stream = ExtResource("20_ujhuc") +volume_db = -5.0 +max_distance = 700.0 +attenuation = 2.0 +bus = &"game_sfx" +script = ExtResource("21_0qeqe") +loop = true +metadata/_custom_type_script = "uid://wapo47a1oddf" + [node name="Ambush回看洞口" parent="Ground/DeployLayer" index="10" instance=ExtResource("10_f6mma")] position = Vector2(522, 31) enabled = false @@ -346,6 +370,9 @@ energy = 0.5 range_item_cull_mask = 8 texture = SubResource("GradientTexture2D_bp5fr") +[node name="AudioListener2D" type="AudioListener2D" parent="Ground/MainPlayer" index="7"] +current = true + [node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"] position = Vector2(11, 148) texture = ExtResource("4_gx8oy") diff --git a/scene/ground/scene/c02/s10_空房间.tscn b/scene/ground/scene/c02/s10_空房间.tscn index ebd4855c..f723fd70 100644 --- a/scene/ground/scene/c02/s10_空房间.tscn +++ b/scene/ground/scene/c02/s10_空房间.tscn @@ -124,20 +124,20 @@ sprite_frames = SubResource("SpriteFrames_th1ek") autoplay = "default" frame_progress = 0.72851 -[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛"] -position = Vector2(0, -12.8172) +[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer" index="4"] +position = Vector2(271, 60.1423) color = Color(0.999971, 0.912551, 0.842208, 1) energy = 1.2 texture = ExtResource("15_e24j0") texture_scale = 0.3 -[node name="血脚印" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="4"] +[node name="血脚印" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="5"] position = Vector2(269, 36.4798) sprite_frames = ExtResource("15_2j5dr") animation = &"空房间血脚印" frame = 8 -[node name="Pickable小猫玩具脑袋" parent="Ground/DeployLayer" index="5" instance=ExtResource("6_27dvh")] +[node name="Pickable小猫玩具脑袋" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_27dvh")] position = Vector2(362, 67.0439) enabled = false visible_follow_enabled = false @@ -150,27 +150,27 @@ rotation = -1.51912 scale = Vector2(0.34, 0.34) texture = ExtResource("8_3ftnp") -[node name="Interactable柜子" parent="Ground/DeployLayer" index="6" instance=ExtResource("5_ylhfc")] +[node name="Interactable柜子" parent="Ground/DeployLayer" index="7" instance=ExtResource("5_ylhfc")] position = Vector2(364, 55) texture = ExtResource("6_mty8e") enabled = false mute_when_interacted = true one_shot = false -[node name="大头小蝉" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="7"] +[node name="大头小蝉" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="8"] self_modulate = Color(0.80687, 0.80687, 0.80687, 1) position = Vector2(351, 29.5782) scale = Vector2(0.9, 0.9) sprite_frames = ExtResource("15_2j5dr") animation = &"坐箱子小婵丢人偶" -[node name="Interactable小蝉" parent="Ground/DeployLayer" index="8" instance=ExtResource("5_ylhfc")] +[node name="Interactable小蝉" parent="Ground/DeployLayer" index="9" instance=ExtResource("5_ylhfc")] position = Vector2(350, 15.7751) mute_when_interacted = true disable_prop_after_interacted = true prop_key = "prop_木头人偶" -[node name="Pickable木头人偶" parent="Ground/DeployLayer" index="9" instance=ExtResource("6_27dvh")] +[node name="Pickable木头人偶" parent="Ground/DeployLayer" index="10" instance=ExtResource("6_27dvh")] z_index = 7 position = Vector2(423, 97.6081) sign_mark_offset = Vector2(0, -7.09) @@ -183,13 +183,13 @@ rotation = -1.19178 scale = Vector2(0.25, 0.25) texture = ExtResource("12_27dvh") -[node name="煤油灯" parent="Ground/DeployLayer" index="10" instance=ExtResource("13_27dvh")] +[node name="煤油灯" parent="Ground/DeployLayer" index="11" instance=ExtResource("13_27dvh")] position = Vector2(373, -13.8031) gaslight_energy = 2.0 gaslight_ground_energy = 2.0 mute_when_interacted = false -[node name="拼接小猫玩具" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"] +[node name="拼接小猫玩具" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"] visible = false light_mask = 32 z_index = 10 @@ -218,7 +218,7 @@ position = Vector2(3, -0.98594) range_item_cull_mask = 32 texture = ExtResource("15_e24j0") -[node name="Ambush首次进入血脚印" parent="Ground/DeployLayer" index="12" instance=ExtResource("14_3ftnp")] +[node name="Ambush首次进入血脚印" parent="Ground/DeployLayer" index="13" instance=ExtResource("14_3ftnp")] position = Vector2(192, 38.4517) freeze_time = 0.1 hook_method = "first_enter_ambush" diff --git a/scene/ground/scene/c02/s12_animation.gd b/scene/ground/scene/c02/s12_animation.gd index 56da3f78..fa714e35 100644 --- a/scene/ground/scene/c02/s12_animation.gd +++ b/scene/ground/scene/c02/s12_animation.gd @@ -30,6 +30,7 @@ func _intro(): layer.disable_crawl = true var duration = layer.show_cat_duration await get_tree().create_timer(duration).timeout + $"Sfx钻盒子演出".play() anim.play() var camera = SceneManager.get_camera_marker() create_tween().tween_property(camera, "force_offset", Vector2.ZERO, 1.0) diff --git a/scene/ground/scene/c02/s12_盒子猫.tscn b/scene/ground/scene/c02/s12_盒子猫.tscn index 6a91b016..ab66c646 100644 --- a/scene/ground/scene/c02/s12_盒子猫.tscn +++ b/scene/ground/scene/c02/s12_盒子猫.tscn @@ -1,8 +1,10 @@ -[gd_scene load_steps=6 format=3 uid="uid://da4cuf2i3nwpj"] +[gd_scene load_steps=8 format=3 uid="uid://da4cuf2i3nwpj"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_ngo77"] [ext_resource type="Script" uid="uid://cyd1xo106unfk" path="res://scene/ground/scene/c02/s12_animation.gd" id="2_7ah3n"] +[ext_resource type="AudioStream" uid="uid://bma77k6n4hwle" path="res://asset/audio/sfx/交互/第一章/sfx_猫猫钻盒子.wav" id="3_72mc1"] [ext_resource type="Texture2D" uid="uid://yn00uls1kvn3" path="res://asset/art/scene/c02/s12_to_s17_盒子猫/bg_初始.png" id="3_oskpk"] +[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_r3hvb"] [ext_resource type="PackedScene" uid="uid://khwxm5qbfj3k" path="res://scene/ground/script/c02/盒子猫canvas_layer.tscn" id="4_vv3sh"] [ext_resource type="SpriteFrames" uid="uid://b85gyfhk1mg6r" path="res://asset/art/gif/c02_盒子猫/c02_盒子猫_frames.tres" id="5_ycgng"] @@ -18,6 +20,12 @@ footstep_type = "盒子猫" script = ExtResource("2_7ah3n") oneshot_animation = "" +[node name="Sfx钻盒子演出" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"] +stream = ExtResource("3_72mc1") +bus = &"game_sfx" +script = ExtResource("4_r3hvb") +metadata/_custom_type_script = "uid://rq6w1vuhuq1m" + [node name="BGSprite2D" parent="Ground" index="1"] texture = ExtResource("3_oskpk") offset = Vector2(0, -103.7) diff --git a/scene/ground/scene/c02/s13_animation.gd b/scene/ground/scene/c02/s13_animation.gd index 940ad25f..0cc6cd2b 100644 --- a/scene/ground/scene/c02/s13_animation.gd +++ b/scene/ground/scene/c02/s13_animation.gd @@ -18,24 +18,18 @@ func _on_ground_ready() -> void: func knock_light_door(): - var knock_stream = preload("uid://7of24bqow07e") + var knock_stream = preload("uid://6q5qi1qon35r") var player = SceneManager.get_player() # 一直循环下去 for _i in range(100): - SceneManager.freeze_player(0, 6) - await get_tree().create_timer(0.6).timeout + AudioManager.play_sfx(knock_stream) + SceneManager.freeze_player(1.5, 6, true) + await get_tree().create_timer(0.5).timeout # 被抓时打断 if not player.visible or player.hide_sprite: _outtro_show() break - AudioManager.play_sfx(knock_stream) - await get_tree().create_timer(0.2).timeout - # 被抓时打断 - if not player.visible or player.hide_sprite: - _outtro_show() - break - AudioManager.play_sfx(knock_stream) - await get_tree().create_timer(0.2).timeout + await get_tree().create_timer(0.5).timeout # 被抓时打断 if not player.visible or player.hide_sprite: _outtro_show() diff --git a/scene/ground/script/c02/刮海报.gd b/scene/ground/script/c02/刮海报.gd index d7d63847..942a6ce9 100644 --- a/scene/ground/script/c02/刮海报.gd +++ b/scene/ground/script/c02/刮海报.gd @@ -8,6 +8,7 @@ signal exit func _ready() -> void: layer = GlobalConfig.CANVAS_LAYER_LITTLE_GAME flyer.shaven.connect(_on_shaven) + SceneManager.pop_center_notification(tr("ui_left_mouse_shave")) var exiting = false diff --git a/scene/ground/script/c02/刮海报_过道.tscn b/scene/ground/script/c02/刮海报_过道.tscn index 3a73b923..42a59e88 100644 --- a/scene/ground/script/c02/刮海报_过道.tscn +++ b/scene/ground/script/c02/刮海报_过道.tscn @@ -42,9 +42,9 @@ expand_mode = 5 stretch_mode = 5 [node name="刮刮乐" parent="." instance=ExtResource("3_qwopf")] -offset_left = -136.0 +offset_left = -102.0 offset_top = -116.0 -offset_right = 69.0 +offset_right = 103.0 offset_bottom = 124.0 texture = SubResource("ImageTexture_qwopf") stretch_mode = 5 diff --git a/scene/ground/script/c02/追猫猪头怪.gd b/scene/ground/script/c02/追猫猪头怪.gd index 343bb2af..6f923867 100644 --- a/scene/ground/script/c02/追猫猪头怪.gd +++ b/scene/ground/script/c02/追猫猪头怪.gd @@ -101,13 +101,22 @@ func _on_ground_ready(): var footstep_count := 0 +var signed_x_diff = 10000 + func _on_footstep_timer_timeout() -> void: - sfx_footstep.play() footstep_count += 1 if footstep_count % 2 == 0: # shake camera camera.shake_camera(4.0, 5.0) + if abs(signed_x_diff) > 250: + if footstep_count % 3 == 0: + sfx_footstep.play() + elif abs(signed_x_diff) > 100: + if footstep_count % 2 == 0: + sfx_footstep.play() + else: + sfx_footstep.play() # 启用/禁用脚步声 @@ -181,7 +190,7 @@ func _physics_process(delta: float) -> void: var player_pos = player.global_position # 玩家到猪头怪面前的距离(有符号) - var signed_x_diff = player_pos.x - global_position.x + signed_x_diff = player_pos.x - global_position.x # 默认向左, flip_h 后向右 if not sprite2d.flip_h: signed_x_diff *= -1 diff --git a/scene/ground/script/c02/追猫猪头怪.tscn b/scene/ground/script/c02/追猫猪头怪.tscn index d4eabeb1..5df34ba4 100644 --- a/scene/ground/script/c02/追猫猪头怪.tscn +++ b/scene/ground/script/c02/追猫猪头怪.tscn @@ -1,14 +1,17 @@ -[gd_scene load_steps=6 format=3 uid="uid://dewbg4phd8c17"] +[gd_scene load_steps=8 format=3 uid="uid://dewbg4phd8c17"] [ext_resource type="Script" uid="uid://tn7sfe0qmix2" path="res://scene/ground/script/c02/追猫猪头怪.gd" id="1_lrjfo"] [ext_resource type="Script" uid="uid://wapo47a1oddf" path="res://scene/entity/audio/sfx2d.gd" id="2_35vtd"] -[ext_resource type="AudioStream" uid="uid://dd2whbtg7ah8a" path="res://asset/audio/sfx/脚步/猫咪走路2.wav" id="2_e62rv"] +[ext_resource type="AudioStream" uid="uid://djc818l7b4oif" path="res://asset/audio/sfx/脚步/sfx_猪头走路1.wav" id="2_icl85"] +[ext_resource type="AudioStream" uid="uid://0pm6s7jdo5ca" path="res://asset/audio/sfx/脚步/sfx_猪头走路2.wav" id="3_q3g2s"] [ext_resource type="SpriteFrames" uid="uid://b85gyfhk1mg6r" path="res://asset/art/gif/c02_盒子猫/c02_盒子猫_frames.tres" id="4_3sbui"] +[ext_resource type="AudioStream" uid="uid://dkadc7ewletgn" path="res://asset/audio/sfx/交互/第一章/sfx_猪头喘气.wav" id="4_3ypo7"] [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_3sbui"] playback_mode = 1 -streams_count = 1 -stream_0/stream = ExtResource("2_e62rv") +streams_count = 2 +stream_0/stream = ExtResource("2_icl85") +stream_1/stream = ExtResource("3_q3g2s") [node name="追猫猪头怪" type="Node2D"] script = ExtResource("1_lrjfo") @@ -21,6 +24,16 @@ bus = &"game_sfx" script = ExtResource("2_35vtd") metadata/_custom_type_script = "uid://wapo47a1oddf" +[node name="Sfx喘气" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("4_3ypo7") +autoplay = true +max_distance = 800.0 +attenuation = 1.7411 +bus = &"game_sfx" +script = ExtResource("2_35vtd") +loop = true +metadata/_custom_type_script = "uid://wapo47a1oddf" + [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] z_index = 20 sprite_frames = ExtResource("4_3sbui") diff --git a/scene/player/main_player.tscn b/scene/player/main_player.tscn index 0c22dd5e..82c172db 100644 --- a/scene/player/main_player.tscn +++ b/scene/player/main_player.tscn @@ -128,5 +128,5 @@ unique_name_in_owner = true light_mask = 9 scale = Vector2(0.5, 0.5) sprite_frames = ExtResource("2_3w63u") -animation = &"c00_吕萍_idle_right" +animation = &"c02_吕萍_被吓到后退" offset = Vector2(0, -100) diff --git a/scene/prop/prop_inventory_resource.gd b/scene/prop/prop_inventory_resource.gd index d20c2f80..7fbee489 100644 --- a/scene/prop/prop_inventory_resource.gd +++ b/scene/prop/prop_inventory_resource.gd @@ -2,6 +2,7 @@ class_name PropInventory extends Resource signal current_item_changed(prop_key: String) +@export var owner := "" @export var enabled_items := [] @export var current_index := 0: set(val): diff --git a/scene/settings/settings.gd b/scene/settings/settings.gd index 616c1572..3d9cde40 100644 --- a/scene/settings/settings.gd +++ b/scene/settings/settings.gd @@ -15,8 +15,8 @@ signal exited @onready var diary_btn = %DiaryBtn as Button # 音量 DB 偏移 -var sfx_db_offset := 6.0 -var dialog_db_offset := -20.0 +var sfx_db_offset := 0.0 +var dialog_db_offset := 0.0 func _ready(): layer = GlobalConfig.CANVAS_LAYER_SETTINGS @@ -103,6 +103,8 @@ func _on_language_options_selected(id: int) -> void: lang = "zh_CN" printerr("Unknown language id: ", id) GlobalConfigManager.config.language = id + if GlobalConfig.DEBUG: + print("set language to: ", lang) TranslationServer.set_locale(lang)