reenter lock 相关调整;demo 小蝶相关引导完善
11
README.md
@ -36,6 +36,17 @@ ProAnimatedSprite2D,增强 AnimatedSprite2D 的表现,在其基础上增加
|
||||
- 正常游戏:Main -> GroundLoader -> Ground
|
||||
- 开发阶段:直接编辑 Ground
|
||||
|
||||
### 整体说明
|
||||
|
||||
GroundLoader 加载/切换 Ground 时,分为上下两段转场:
|
||||
- 上半段(旧场景变黑):先暂停旧 ground,即在转场黑屏过程中旧的 ground 会 paused
|
||||
- 下半段(新场景出现):先暂停,在完全出现后再运行
|
||||
【特殊注意⚠️】
|
||||
- AnimationPlayer 的 process_mode 并非 inderited,而是 pausable。这意味着 AnimationPlayer 的 _on_ground_ready 在转场时仍旧可以直接运行。
|
||||
- 同样的还有 Sfx/Sfx2D,它们仍旧可以播放音频直到上半段转场结束
|
||||
- 一些 npc、player 大运行脚本会被中断。如果想让它们仍旧运行,需设置为 pausable。
|
||||
|
||||
|
||||
### Ground 说明
|
||||
|
||||
#### AnimationPlayer:每个 Ground 都有一个 AnimationPlayer,脚本继承自定义的 AnimationRoot
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_resource type="SpriteFrames" load_steps=112 format=3 uid="uid://3nas025c2c5u"]
|
||||
[gd_resource type="SpriteFrames" load_steps=119 format=3 uid="uid://3nas025c2c5u"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dwhh5uck24og4" path="res://asset/art/gif/c02_杂项/听纸杯/0.png" id="1_jpxok"]
|
||||
[ext_resource type="Texture2D" uid="uid://b7gqorave0ung" path="res://asset/art/gif/c02_杂项/f3/0.png" id="1_o3ytw"]
|
||||
@ -97,10 +97,17 @@
|
||||
[ext_resource type="Texture2D" uid="uid://bvw60yttop86o" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/53.png" id="70_uepmd"]
|
||||
[ext_resource type="Texture2D" uid="uid://b84ubyyn183xu" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/54.png" id="71_5y0bi"]
|
||||
[ext_resource type="Texture2D" uid="uid://dmbrwa48pj377" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/55.png" id="72_2d8k0"]
|
||||
[ext_resource type="Texture2D" uid="uid://bodns08vrqosg" path="res://asset/art/gif/c02_杂项/小蝉背对转头/0.png" id="73_6h0n3"]
|
||||
[ext_resource type="Texture2D" uid="uid://8rlyfr3fsy2h" path="res://asset/art/gif/c02_杂项/小蝉背对呼吸帧/0.png" id="73_aceu7"]
|
||||
[ext_resource type="Texture2D" uid="uid://cccvhj6lo0hen" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/56.png" id="73_u1khd"]
|
||||
[ext_resource type="Texture2D" uid="uid://w27e751y7rj1" path="res://asset/art/gif/c02_杂项/小蝉背对转头/1.png" id="74_1ru8v"]
|
||||
[ext_resource type="Texture2D" uid="uid://b8i1d3455t41a" path="res://asset/art/gif/c02_杂项/小蝉背对呼吸帧/1.png" id="74_3er7a"]
|
||||
[ext_resource type="Texture2D" uid="uid://dyp0q0a6lcswk" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/57.png" id="74_csbcu"]
|
||||
[ext_resource type="Texture2D" uid="uid://cavhwdgmc3cpb" path="res://asset/art/gif/c02_杂项/小蝉背对转头/2.png" id="75_aceu7"]
|
||||
[ext_resource type="Texture2D" uid="uid://dsom0pwipi4gm" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/58.png" id="75_kdvnj"]
|
||||
[ext_resource type="Texture2D" uid="uid://cacqeynmqya6m" path="res://asset/art/gif/c02_杂项/小蝉背对转头/3.png" id="76_3er7a"]
|
||||
[ext_resource type="Texture2D" uid="uid://bdhj86py8gca7" path="res://asset/art/gif/c02_杂项/小婵晃脚掉鞋/59.png" id="76_0647m"]
|
||||
[ext_resource type="Texture2D" uid="uid://dtt5y6ujnrb1r" path="res://asset/art/gif/c02_杂项/小蝉背对转头/4.png" id="77_10bib"]
|
||||
[ext_resource type="Texture2D" uid="uid://bkfxnc8jc6ad" path="res://asset/art/gif/c02_杂项/火苗/0.png" id="87_tgdu0"]
|
||||
[ext_resource type="Texture2D" uid="uid://dw1abmepuchpf" path="res://asset/art/gif/c02_杂项/火苗/1.png" id="88_i5ln4"]
|
||||
[ext_resource type="Texture2D" uid="uid://ixgcovre8mwg" path="res://asset/art/gif/c02_杂项/火苗/2.png" id="89_eshku"]
|
||||
@ -346,6 +353,49 @@ animations = [{
|
||||
"speed": 30.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("73_aceu7")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("74_3er7a")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"小蝉背对呼吸帧",
|
||||
"speed": 1.7
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("73_6h0n3")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("74_1ru8v")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("75_aceu7")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("76_3er7a")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("77_10bib")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("76_3er7a")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("77_10bib")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("76_3er7a")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("77_10bib")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"小蝉背对转头",
|
||||
"speed": 2.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("2_wu63b")
|
||||
}, {
|
||||
|
BIN
asset/art/gif/c02_杂项/小蝉背对呼吸帧.gif
Normal file
After Width: | Height: | Size: 2.5 KiB |
14
asset/art/gif/c02_杂项/小蝉背对呼吸帧.gif.import
Normal file
@ -0,0 +1,14 @@
|
||||
[remap]
|
||||
|
||||
importer="gif.animated.texture.plugin"
|
||||
type="SpriteFrames"
|
||||
uid="uid://d2htj1xiwm8ba"
|
||||
path="res://.godot/imported/小蝉背对呼吸帧.gif-c49f1c826a8b2834adde29d8c1b21dfe.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对呼吸帧.gif"
|
||||
dest_files=["res://.godot/imported/小蝉背对呼吸帧.gif-c49f1c826a8b2834adde29d8c1b21dfe.tres"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/gif/c02_杂项/小蝉背对呼吸帧/0.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://oh4e48nxm4j6"
|
||||
path="res://.godot/imported/信件碎片.png-148d8c76f1c905d18bd18b04343030cd.ctex"
|
||||
uid="uid://8rlyfr3fsy2h"
|
||||
path="res://.godot/imported/0.png-4489936c75353f783f2a5f2b08612d0c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/prop/c01/信件碎片.png"
|
||||
dest_files=["res://.godot/imported/信件碎片.png-148d8c76f1c905d18bd18b04343030cd.ctex"]
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对呼吸帧/0.png"
|
||||
dest_files=["res://.godot/imported/0.png-4489936c75353f783f2a5f2b08612d0c.ctex"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/gif/c02_杂项/小蝉背对呼吸帧/1.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://glrm37tra7v5"
|
||||
path="res://.godot/imported/完整信件.png-cfd076a390551cbdbbaeee723f1d98cc.ctex"
|
||||
uid="uid://b8i1d3455t41a"
|
||||
path="res://.godot/imported/1.png-c7dd20e965fd4eabf11a16350cd0785c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/little_game/拼凑信件/完整信件.png"
|
||||
dest_files=["res://.godot/imported/完整信件.png-cfd076a390551cbdbbaeee723f1d98cc.ctex"]
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对呼吸帧/1.png"
|
||||
dest_files=["res://.godot/imported/1.png-c7dd20e965fd4eabf11a16350cd0785c.ctex"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头.gif
Normal file
After Width: | Height: | Size: 3.5 KiB |
14
asset/art/gif/c02_杂项/小蝉背对转头.gif.import
Normal file
@ -0,0 +1,14 @@
|
||||
[remap]
|
||||
|
||||
importer="gif.animated.texture.plugin"
|
||||
type="SpriteFrames"
|
||||
uid="uid://bi2uhn00cm7tq"
|
||||
path="res://.godot/imported/小蝉背对转头.gif-a231e948713f4b3f108ebad70cb8c2a1.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头.gif"
|
||||
dest_files=["res://.godot/imported/小蝉背对转头.gif-a231e948713f4b3f108ebad70cb8c2a1.tres"]
|
||||
|
||||
[params]
|
||||
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头/0.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
asset/art/gif/c02_杂项/小蝉背对转头/0.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bodns08vrqosg"
|
||||
path="res://.godot/imported/0.png-0117fddf32292cc5931093e4a92929ad.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头/0.png"
|
||||
dest_files=["res://.godot/imported/0.png-0117fddf32292cc5931093e4a92929ad.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
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头/1.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
34
asset/art/gif/c02_杂项/小蝉背对转头/1.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://w27e751y7rj1"
|
||||
path="res://.godot/imported/1.png-98ab9505ace31c28a77e30c1e7464cf5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头/1.png"
|
||||
dest_files=["res://.godot/imported/1.png-98ab9505ace31c28a77e30c1e7464cf5.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
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头/2.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
asset/art/gif/c02_杂项/小蝉背对转头/2.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cavhwdgmc3cpb"
|
||||
path="res://.godot/imported/2.png-89111e83037db31c51545d8ac4898e77.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头/2.png"
|
||||
dest_files=["res://.godot/imported/2.png-89111e83037db31c51545d8ac4898e77.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
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头/3.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
asset/art/gif/c02_杂项/小蝉背对转头/3.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cacqeynmqya6m"
|
||||
path="res://.godot/imported/3.png-dd8f6a4cc7b0e3a091c3a2693475c733.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头/3.png"
|
||||
dest_files=["res://.godot/imported/3.png-dd8f6a4cc7b0e3a091c3a2693475c733.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
|
BIN
asset/art/gif/c02_杂项/小蝉背对转头/4.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
asset/art/gif/c02_杂项/小蝉背对转头/4.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dtt5y6ujnrb1r"
|
||||
path="res://.godot/imported/4.png-a111198b428d3667a44b48b41d711ec5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/gif/c02_杂项/小蝉背对转头/4.png"
|
||||
dest_files=["res://.godot/imported/4.png-a111198b428d3667a44b48b41d711ec5.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
|
BIN
asset/art/little_game/拼凑信件/信件碎片.png
Executable file → Normal file
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
@ -2,7 +2,7 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://duxdnw1uhlpm5"
|
||||
uid="uid://oh4e48nxm4j6"
|
||||
path="res://.godot/imported/信件碎片.png-c35bdb7240fb280003e7b3bca88b316c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
|
Before Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 42 KiB |
BIN
asset/audio/专用/衔蝶_主菜单music人声版.mp3
Normal file
19
asset/audio/专用/衔蝶_主菜单music人声版.mp3.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="mp3"
|
||||
type="AudioStreamMP3"
|
||||
uid="uid://brs150xgqnyd5"
|
||||
path="res://.godot/imported/衔蝶_主菜单music人声版.mp3-b7e65591aa72232d8d0f92d1a8a3714b.mp3str"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶_主菜单music人声版.mp3"
|
||||
dest_files=["res://.godot/imported/衔蝶_主菜单music人声版.mp3-b7e65591aa72232d8d0f92d1a8a3714b.mp3str"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
BIN
asset/audio/专用/衔蝶_主菜单music人声版.wav
Normal file
24
asset/audio/专用/衔蝶_主菜单music人声版.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://c200iyw8iv55e"
|
||||
path="res://.godot/imported/衔蝶_主菜单music人声版.wav-5ae06fe6ed3e2a9c602f4ae79b107028.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶_主菜单music人声版.wav"
|
||||
dest_files=["res://.godot/imported/衔蝶_主菜单music人声版.wav-5ae06fe6ed3e2a9c602f4ae79b107028.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
|
BIN
asset/audio/专用/衔蝶_主菜单music琵琶版.wav
Normal file
24
asset/audio/专用/衔蝶_主菜单music琵琶版.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bos75l685w3q5"
|
||||
path="res://.godot/imported/衔蝶_主菜单music琵琶版.wav-3a558322426c75bbd7f8b9678a4c9187.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶_主菜单music琵琶版.wav"
|
||||
dest_files=["res://.godot/imported/衔蝶_主菜单music琵琶版.wav-3a558322426c75bbd7f8b9678a4c9187.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
|
BIN
asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.mp3
Normal file
19
asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.mp3.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="mp3"
|
||||
type="AudioStreamMP3"
|
||||
uid="uid://bkiklof028v51"
|
||||
path="res://.godot/imported/衔蝶大结局_摇啊摇_Music Mastered.mp3-4359c1f8cc426c7e7a1aa0d907363b73.mp3str"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.mp3"
|
||||
dest_files=["res://.godot/imported/衔蝶大结局_摇啊摇_Music Mastered.mp3-4359c1f8cc426c7e7a1aa0d907363b73.mp3str"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
BIN
asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.wav
Normal file
24
asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://diucbqquysu0s"
|
||||
path="res://.godot/imported/衔蝶大结局_摇啊摇_Music Mastered.wav-9493f885fd6384421abe5ec1da685954.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/专用/衔蝶大结局_摇啊摇_Music Mastered.wav"
|
||||
dest_files=["res://.godot/imported/衔蝶大结局_摇啊摇_Music Mastered.wav-9493f885fd6384421abe5ec1da685954.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
|
@ -11,6 +11,7 @@ c02_小蝉寻人启事_脸部破碎,寻人启事...画像和字迹都看不清
|
||||
setting_画册,画册(G),,,,,
|
||||
notes_干掉的血迹,干掉的血迹,,,,,
|
||||
c02_瞎子卧室_血脚印,这画上的脚印和刚刚看到的一样。,,,,,
|
||||
prop_奇怪的肉_说明,,,,,,
|
||||
index_新游戏,新游戏,,,,,New Game
|
||||
index_继续游戏,继续游戏,,,,,Resume
|
||||
index_退出游戏,退出游戏,,,,,Exit
|
||||
@ -65,9 +66,9 @@ prop_银元_说明,一枚“袁大头”银元,中华民国十年造。,,,,,
|
||||
prop_院长的信,院长的信,,,[#texture=c01/院长的信物品.png][#inspect=c01/院长的信.png],,
|
||||
prop_院长的信_说明,浦育院院长秦阳<br>民国21年11月20日<br>致吕萍:<br>你现下境况如何?<br>你虽离开浦育院已久,但我始终没有忘记为你祈祷。<br>愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。<br>你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。<br>若有闲暇,欢迎你回浦育院看看。<br>院长童玉君<br>民国十九年十月十五日<br>公寓地址 芦昌路26弄3号,,,,,
|
||||
prop_火柴,火柴,,,[#texture=c02/火柴.png],,
|
||||
prop_火柴_说明,火柴_说明,,,[#texture=c02/火柴.png],,
|
||||
prop_火柴_说明,盒里还剩下很多根,稍微有些受潮,,,[#texture=c02/火柴.png],,
|
||||
prop_小猫玩具的脑袋,小猫玩具的脑袋,,,[#texture=c02/新小猫头.png],,
|
||||
prop_小猫玩具的脑袋_说明,,,,,,
|
||||
prop_小猫玩具的脑袋_说明,某个玩具的部件,有些眼熟,,,,,
|
||||
prop_无头小猫玩具,无头小猫玩具,,,[#texture=c02/新小猫身体.png][#inspect=c02/新小猫身体_特写.png],,
|
||||
prop_无头小猫玩具_说明,没有脑袋的小猫玩偶,针脚歪歪扭扭,不甚熟练,,,,,
|
||||
prop_小猫玩具完整,小猫玩具,,,[#texture=c02/新小猫全身.png],,
|
||||
@ -84,8 +85,7 @@ prop_小鞋子2,小鞋子(二),,,[#texture=c02/小鞋子2.png],,
|
||||
prop_小鞋子2_说明,尺寸极小,为缠足女童所穿弓鞋,尖锐鞋形似翘首鸟头,木质鞋底弯曲如弓,,,,,
|
||||
prop_麻将,麻将,,,[#texture=c02/麻将.png],,
|
||||
prop_麻将_说明,这块麻将上雕着一朵圆形的花,,,,,
|
||||
prop_奇怪的肉,奇怪的肉,,,[#texture=c02/奇怪的肉.png],,
|
||||
prop_奇怪的肉_说明,,,,,,
|
||||
prop_奇怪的肉,奇怪的肉 这块肉脂肪黄黄的...[ID:prop_奇怪的肉_说明],,,[#texture=c02/奇怪的肉.png],,
|
||||
prop_弹珠,弹珠,,,[#texture=c02/弹珠.png],,
|
||||
prop_弹珠_说明,一种玻璃小球,孩子们常用它来进行弹子游戏,,,,,
|
||||
prop_木头人偶,木头人偶,,,[#texture=c02/小蝉人偶.png],,
|
||||
@ -171,6 +171,7 @@ c02_二楼血脚印,又是这种小小尖尖的血脚印...,,,,,
|
||||
c02_离开红色演出,刚才那些...到底是怎么回事?,,,,,
|
||||
c02_瞎子卧室_八卦图,「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」<br>咦,这口诀是谁教我的来着...,,,,,
|
||||
c02_瞎子卧室_十字架,院长房间里也有一个类似的十字架。,,,,,
|
||||
c02_小蝉盒子特写,我会在盒子里一直陪着你 :3,,,,,
|
||||
c02_小蝉恨他们,我恨他们!,,,,,
|
||||
c02_火灾等待准备,还没准备好点火呢,,,,,
|
||||
c02_霸凌救小蝉开始,啊!我得想办法帮帮那个小女孩...,,,,,
|
||||
|
|
@ -70,9 +70,9 @@
|
||||
|
||||
# c02
|
||||
火柴 [#texture=c02/火柴.png] [ID:prop_火柴]
|
||||
火柴_说明 [#texture=c02/火柴.png] [ID:prop_火柴_说明]
|
||||
盒里还剩下很多根,稍微有些受潮 [#texture=c02/火柴.png] [ID:prop_火柴_说明]
|
||||
小猫玩具的脑袋 [#texture=c02/新小猫头.png] [ID:prop_小猫玩具的脑袋]
|
||||
[ID:prop_小猫玩具的脑袋_说明]
|
||||
某个玩具的部件,有些眼熟[ID:prop_小猫玩具的脑袋_说明]
|
||||
无头小猫玩具 [#texture=c02/新小猫身体.png] [#inspect=c02/新小猫身体_特写.png] [ID:prop_无头小猫玩具]
|
||||
没有脑袋的小猫玩偶,针脚歪歪扭扭,不甚熟练 [ID:prop_无头小猫玩具_说明]
|
||||
小猫玩具 [#texture=c02/新小猫全身.png] [ID:prop_小猫玩具完整]
|
||||
@ -90,8 +90,7 @@
|
||||
麻将 [#texture=c02/麻将.png] [ID:prop_麻将]
|
||||
这块麻将上雕着一朵圆形的花[ID:prop_麻将_说明]
|
||||
#新鲜的肉 [#texture=c02/新鲜的肉.png] [ID:prop_新鲜的肉]
|
||||
奇怪的肉 [#texture=c02/奇怪的肉.png] [ID:prop_奇怪的肉]
|
||||
[ID:prop_奇怪的肉_说明]
|
||||
奇怪的肉 [#texture=c02/奇怪的肉.png] [ID:prop_奇怪的肉]这块肉脂肪黄黄的...[ID:prop_奇怪的肉_说明]
|
||||
弹珠 [#texture=c02/弹珠.png] [ID:prop_弹珠]
|
||||
一种玻璃小球,孩子们常用它来进行弹子游戏[ID:prop_弹珠_说明]
|
||||
木头人偶 [#texture=c02/小蝉人偶.png] [ID:prop_木头人偶]
|
||||
@ -214,6 +213,7 @@
|
||||
刚才那些...到底是怎么回事? [ID:c02_离开红色演出]
|
||||
「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」<br>咦,这口诀是谁教我的来着... [ID:c02_瞎子卧室_八卦图]
|
||||
院长房间里也有一个类似的十字架。[ID:c02_瞎子卧室_十字架]
|
||||
我会在盒子里一直陪着你 :3 [ID:c02_小蝉盒子特写]
|
||||
我恨他们![ID:c02_小蝉恨他们]
|
||||
# c02 火灾
|
||||
还没准备好点火呢 [ID:c02_火灾等待准备]
|
||||
|
@ -76,8 +76,11 @@ func get_lock() -> PlayerReenterLock:
|
||||
return PlayerReenterLock.new()
|
||||
|
||||
|
||||
func lock_player(duration := 0):
|
||||
func lock_player(duration := 0.0, action := 3, auto_quit := false):
|
||||
get_lock().lock_all(duration)
|
||||
if action != 3:
|
||||
# 先 freeze 再 action,否则会重置 action
|
||||
player_action(action, auto_quit)
|
||||
|
||||
|
||||
func unlock_player():
|
||||
@ -94,8 +97,9 @@ func unhold_player():
|
||||
|
||||
# lock_time: the time to lock the player action. 0 means lock forever, thus the player will be locked until release_player is called.
|
||||
func freeze_player(lock_time: float, action := 3, auto_quit := false) -> void:
|
||||
player_action(action, auto_quit)
|
||||
# 先 freeze 再 action,否则会重置 action
|
||||
get_lock().freeze(lock_time)
|
||||
player_action(action, auto_quit)
|
||||
|
||||
|
||||
func release_player():
|
||||
|
@ -297,9 +297,12 @@ func _on_first_frozen() -> void:
|
||||
|
||||
# duration: the time to lock the player action. 0 means lock forever, thus the player will be locked until release_player is called.
|
||||
func freeze_player(duration: float, action_code: int, auto_quit: bool) -> void:
|
||||
player_action(action_code, auto_quit)
|
||||
if reenter_lock:
|
||||
reenter_lock.freeze(duration)
|
||||
else:
|
||||
push_error("freeze_player reenter_lock is not set.")
|
||||
# 先 freeze 再 action,否则会重置 action
|
||||
player_action(action_code, auto_quit)
|
||||
|
||||
|
||||
func release_player():
|
||||
|
@ -20,6 +20,7 @@ var scene_sense_player_mov := false
|
||||
func _ready() -> void:
|
||||
bus = &"game_sfx"
|
||||
default_db = volume_db
|
||||
process_mode = Node.PROCESS_MODE_PAUSABLE
|
||||
if Engine.is_editor_hint():
|
||||
return
|
||||
finished.connect(_on_finished)
|
||||
|
@ -21,6 +21,7 @@ var timer: Timer
|
||||
|
||||
func _ready() -> void:
|
||||
bus = &"game_sfx"
|
||||
process_mode = Node.PROCESS_MODE_PAUSABLE
|
||||
finished.connect(_on_finished)
|
||||
timer = Timer.new()
|
||||
timer.autostart = autoplay and loop and loop_round_time > 0.0 and not Engine.is_editor_hint()
|
||||
|
@ -128,7 +128,6 @@ size = Vector2(35, 100)
|
||||
[node name="Npc" type="AnimatedSprite2D"]
|
||||
light_mask = 5
|
||||
script = ExtResource("1_jegr2")
|
||||
snap_to_edge = null
|
||||
collision_width_and_x = Vector2(35, 0)
|
||||
dialogue_title = ""
|
||||
|
||||
@ -182,7 +181,7 @@ shape = SubResource("RectangleShape2D_4fuic")
|
||||
[node name="SignSnapper" type="Marker2D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("8_7lwt5")
|
||||
radius = 20.0
|
||||
radius = 25.0
|
||||
walk_to_edge = true
|
||||
action_on_arrived = 4
|
||||
metadata/_custom_type_script = "uid://cnt01hiw52bmn"
|
||||
|
@ -13,7 +13,6 @@ size = Vector2(20, 60)
|
||||
|
||||
[node name="Pickable" type="Sprite2D"]
|
||||
script = ExtResource("1_jk1u0")
|
||||
action_key = null
|
||||
prop_key = ""
|
||||
|
||||
[node name="Sfx" type="AudioStreamPlayer" parent="."]
|
||||
|
@ -19,6 +19,7 @@ height = 500
|
||||
script = ExtResource("1_0vrlo")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
process_mode = 1
|
||||
|
||||
[node name="PlayerReenterLock" type="Node" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
@ -66,7 +66,7 @@ func _on_luren_animation_finished() -> void:
|
||||
|
||||
func _knock_door():
|
||||
# 6 号动作:敲门
|
||||
SceneManager.freeze_player(3.5, 6)
|
||||
SceneManager.lock_player(3.5, 6)
|
||||
await get_tree().create_timer(2.2).timeout
|
||||
$"敲门音效".play()
|
||||
await get_tree().create_timer(1.2).timeout
|
||||
@ -86,13 +86,15 @@ func _on_fog_disappear() -> void:
|
||||
func seller_interacted():
|
||||
bookstore_portal.holding = false
|
||||
# 报童交互
|
||||
SceneManager.freeze_player(3.0)
|
||||
SceneManager.freeze_player(0)
|
||||
seller.play("报童给报纸")
|
||||
# 提前写入 prop 中,防止存档 bug,稍后播放获得动画
|
||||
ArchiveManager.archive.prop_inventory.enable_item("prop_信碎片2")
|
||||
SceneManager.enable_prop_item_silently("prop_信碎片2")
|
||||
await get_tree().create_timer(1.5).timeout
|
||||
$"报童音效".play()
|
||||
SceneManager.pop_os_with_str("c01_s07_获得报纸")
|
||||
await SceneManager.get_player().os_finished
|
||||
# 播放获得动画
|
||||
await get_tree().create_timer(2.0).timeout
|
||||
SceneManager.enable_prop_item("prop_信碎片2")
|
||||
SceneManager.release_player()
|
||||
|
||||
|
@ -58,7 +58,7 @@ animations = [{
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_na2nu"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(25, 130)
|
||||
size = Vector2(30, 130)
|
||||
|
||||
[node name="S07" type="Node2D"]
|
||||
|
||||
@ -75,6 +75,7 @@ data = {
|
||||
oneshot_animation = ""
|
||||
|
||||
[node name="环境音" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_na2nu")
|
||||
volume_db = -4.0
|
||||
autoplay = true
|
||||
@ -87,6 +88,7 @@ mode = "场景背景音"
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="chapter_sfx" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_c7jb6")
|
||||
volume_db = -5.0
|
||||
bus = &"game_sfx"
|
||||
@ -94,6 +96,7 @@ script = ExtResource("4_c7jb6")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="报童音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_7sdrt")
|
||||
volume_db = -5.0
|
||||
bus = &"game_sfx"
|
||||
@ -101,6 +104,7 @@ script = ExtResource("4_c7jb6")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="敲门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("6_hwht7")
|
||||
volume_db = -2.0
|
||||
bus = &"game_sfx"
|
||||
@ -108,13 +112,14 @@ script = ExtResource("4_c7jb6")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="开门音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="4"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("8_sqlmr")
|
||||
volume_db = -4.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_c7jb6")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="1"]
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
texture = SubResource("AtlasTexture_amurr")
|
||||
offset = Vector2(0, -158)
|
||||
|
||||
@ -127,7 +132,7 @@ position = Vector2(2233, 13)
|
||||
target_scene = "c01_s08"
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("4_ulvsd")]
|
||||
position = Vector2(94, 45)
|
||||
position = Vector2(94, 56)
|
||||
debug_note = "传送来的位置"
|
||||
portal_name = "1"
|
||||
|
||||
@ -140,7 +145,7 @@ animation = &"default"
|
||||
frame = 0
|
||||
|
||||
[node name="portal_2" parent="Ground/DeployLayer" index="3" instance=ExtResource("4_ulvsd")]
|
||||
position = Vector2(1731, 25)
|
||||
position = Vector2(1728, 33)
|
||||
debug_note = "c01_s07 的 2 号门通往书店"
|
||||
portal_name = "2"
|
||||
target_scene = "c01_s08"
|
||||
@ -150,8 +155,18 @@ holding = true
|
||||
holding_reason_key = "c01_s07_需要报纸"
|
||||
|
||||
[node name="SfxDefault" parent="Ground/DeployLayer/portal_2" index="0"]
|
||||
process_mode = 1
|
||||
volume_db = -2.0
|
||||
|
||||
[node name="SfxOpen" parent="Ground/DeployLayer/portal_2" index="1"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxEnter" parent="Ground/DeployLayer/portal_2" index="2"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxLocked" parent="Ground/DeployLayer/portal_2" index="3"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="Sign" parent="Ground/DeployLayer/portal_2" index="4"]
|
||||
enabled = true
|
||||
|
||||
@ -162,6 +177,9 @@ offset_bottom = -50.0
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/portal_2/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_na2nu")
|
||||
|
||||
[node name="SignSnapper" parent="Ground/DeployLayer/portal_2" index="7"]
|
||||
action_on_arrived = 4
|
||||
|
||||
[node name="背景" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
position = Vector2(1084, 5.5)
|
||||
texture = ExtResource("4_8do8y")
|
||||
@ -188,6 +206,7 @@ action_configs = Array[Dictionary]([{
|
||||
}])
|
||||
|
||||
[node name="Sfx2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/陆仁舞刀"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("14_c7jb6")
|
||||
volume_db = -2.0
|
||||
autoplay = true
|
||||
@ -262,7 +281,7 @@ action = 5
|
||||
title_filter = "c01"
|
||||
note_key = "c01_s07_书店展柜"
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="4"]
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(41, 103)
|
||||
character = "小小蝶"
|
||||
|
||||
|
@ -147,8 +147,8 @@ func _on_shelf_game_success() -> void:
|
||||
fall_off.visible = true
|
||||
fall_off.play()
|
||||
fall_off.animation_finished.connect(_on_fall_off_finished)
|
||||
# 从 sfx_生死簿演出 中播放
|
||||
# $"摔倒音效".play()
|
||||
# 从 sfx_生死簿演出 中退出时播放不出来,需要在此处播放
|
||||
$"摔倒音效".play()
|
||||
_check_portal()
|
||||
|
||||
func _on_fall_off_finished() -> void:
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=21 format=3 uid="uid://cwu4dhayra8pg"]
|
||||
[gd_scene load_steps=22 format=3 uid="uid://cwu4dhayra8pg"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_b3cca"]
|
||||
[ext_resource type="Script" uid="uid://6q2pfbqsw10t" path="res://scene/ground/scene/c01/s08_animation.gd" id="2_0lque"]
|
||||
@ -13,6 +13,7 @@
|
||||
[ext_resource type="Texture2D" uid="uid://c3ii6vsja0645" path="res://asset/art/scene/c01/s08_书店/书店参考.png" id="6_l2q02"]
|
||||
[ext_resource type="PackedScene" uid="uid://cw3q5pvciumil" path="res://scene/entity/interactable.tscn" id="7_fue0t"]
|
||||
[ext_resource type="SpriteFrames" uid="uid://bmwm400w8r4ju" path="res://asset/art/gif/c01_书店/c01_书店_frames.tres" id="8_hunwx"]
|
||||
[ext_resource type="AudioStream" uid="uid://bnjyw5v85s6qe" path="res://asset/audio/sfx/交互/序章/04_书店内_主角摔倒.wav" id="8_p6k3c"]
|
||||
[ext_resource type="Texture2D" uid="uid://bho8xal4ha50l" path="res://asset/art/scene/c01/s08_书店/l_打光.png" id="9_i4dqp"]
|
||||
[ext_resource type="AudioStream" uid="uid://cniawn37n8888" path="res://asset/audio/sfx/交互/序章/04_书店内_递交报纸.wav" id="9_lfr41"]
|
||||
[ext_resource type="Texture2D" uid="uid://bp4y3vujvsl7r" path="res://asset/art/scene/c01/s08_书店/fg_前景.png" id="10_4e3a1"]
|
||||
@ -43,7 +44,7 @@ _data = {
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_0x288"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(10, 70)
|
||||
size = Vector2(20, 70)
|
||||
|
||||
[node name="S08" type="Node2D"]
|
||||
position = Vector2(1, 0)
|
||||
@ -60,6 +61,7 @@ script = ExtResource("2_0lque")
|
||||
oneshot_animation = "one_shot"
|
||||
|
||||
[node name="环境音" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_0x288")
|
||||
volume_db = -8.0
|
||||
autoplay = true
|
||||
@ -72,6 +74,7 @@ mode = "场景背景音"
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="诡异环境音" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_eerhd")
|
||||
volume_db = -7.0
|
||||
bus = &"game_sfx"
|
||||
@ -83,19 +86,28 @@ mode = "场景背景音"
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="写字声[未启用]" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("4_5j1ov")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_p6k3c")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="放报纸音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("9_lfr41")
|
||||
volume_db = -5.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_p6k3c")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="1"]
|
||||
[node name="摔倒音效" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="4"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("8_p6k3c")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_p6k3c")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
material = SubResource("ShaderMaterial_ddd5v")
|
||||
texture = ExtResource("3_322m4")
|
||||
offset = Vector2(0, -158)
|
||||
@ -151,7 +163,11 @@ scatter_on_start = true
|
||||
[node name="Interactable报纸柜台" parent="Ground/DeployLayer" index="6" instance=ExtResource("7_fue0t")]
|
||||
position = Vector2(135, 49)
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/Interactable报纸柜台" index="0"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/Interactable报纸柜台" index="1"]
|
||||
process_mode = 1
|
||||
stream = null
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable报纸柜台/Area2D" index="0"]
|
||||
@ -185,7 +201,7 @@ energy = 0.4
|
||||
texture = ExtResource("9_i4dqp")
|
||||
offset = Vector2(317, 0)
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="4"]
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(437, 98)
|
||||
character = "小小蝶"
|
||||
|
||||
@ -197,7 +213,7 @@ offset = Vector2(0, 40)
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(30, 150, 545, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="7"]
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
energy = 0.0
|
||||
blend_mode = 1
|
||||
|
||||
|
@ -40,6 +40,11 @@ func _on_ground_ready() -> void:
|
||||
$"../DeployLayer/Ambush偷听对话".enabled = false
|
||||
eavesdrop_window.visible = false
|
||||
|
||||
# 小蝉消失
|
||||
var xiaochan = $"../DeployLayer/Ambush小蝉消失" as Ambush2D
|
||||
if xiaochan.played:
|
||||
xiaochan.visible = false
|
||||
|
||||
$"../DeployLayer/Closeup敲门游戏".exit.connect(_on_knock_exit)
|
||||
|
||||
counter = $"../DeployLayer/Interactable柜子" as Interactable2D
|
||||
@ -85,7 +90,7 @@ func _on_ground_ready() -> void:
|
||||
small_shoe = $"../DeployLayer/Pickable小鞋子" as Pickable2D
|
||||
|
||||
if ArchiveManager.get_global_value("c02_madman_interacted", false) and not data.camera_played:
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.lock_player(0)
|
||||
# 等待转场
|
||||
await get_tree().create_timer(1.0).timeout
|
||||
small_shoe.enabled = true
|
||||
@ -116,14 +121,19 @@ func _on_ground_ready() -> void:
|
||||
_setup_bully_or_burning(true)
|
||||
|
||||
|
||||
func xiaochan_disappear():
|
||||
var xc = $"../DeployLayer/Ambush小蝉消失/ProSprite" as AnimatedSprite2D
|
||||
xc.play("小蝉背对转头")
|
||||
create_tween().tween_property(xc, "modulate:a", 0.0, 2.2)
|
||||
|
||||
|
||||
func drop_shoe(progress: float, y1: float, y2: float):
|
||||
var t = ease(progress, 4.0)
|
||||
small_shoe.position.y = lerp(y1, y2, t)
|
||||
|
||||
|
||||
func cg_end() -> void:
|
||||
SceneManager.release_player()
|
||||
# prop_小鞋子2
|
||||
SceneManager.unlock_player()
|
||||
# SceneManager.enable_prop_item("prop_小鞋子2")
|
||||
set_data("camera_played", true)
|
||||
$"../CameraFocusMarker".limit_top += 1000
|
||||
@ -174,17 +184,19 @@ func shocking_lighting() -> void:
|
||||
func eavesdrop() -> void:
|
||||
$"../DeployLayer/Ambush偷听对话".enabled = false
|
||||
# 12 c00_吕萍_蹲下 13 c00_吕萍_蹲下呼吸 14 c00_吕萍_起立
|
||||
SceneManager.freeze_player(0, 12)
|
||||
SceneManager.lock_player(0, 12)
|
||||
# play("eavesdrop")
|
||||
await get_tree().create_timer(1.0).timeout
|
||||
SceneManager.freeze_player(0, 13)
|
||||
SceneManager.player_action(13)
|
||||
# 对话
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c02, "c02_04_李氏癞子")
|
||||
await DialogueManager.dialogue_ended
|
||||
eavesdrop_window.visible = false
|
||||
await get_tree().create_timer(1.0).timeout
|
||||
SceneManager.freeze_player(1.0, 14, true)
|
||||
SceneManager.player_action(14, true)
|
||||
ArchiveManager.set_global_entry("c02_eavesdrop_finished", true)
|
||||
await get_tree().create_timer(1.5).timeout
|
||||
SceneManager.unlock_player()
|
||||
|
||||
|
||||
func _setup_bully_or_burning(reenter_scene := false):
|
||||
@ -204,11 +216,12 @@ func _setup_bully_or_burning(reenter_scene := false):
|
||||
bully_layer.get_node("wall/CollisionShape2D").disabled = false
|
||||
burning_layer.visible = false
|
||||
bully_layer.visible = true
|
||||
# 霸凌童谣直接播放
|
||||
$"../DeployLayer/霸凌/f1/Sfx2D霸凌童谣".play()
|
||||
if not ArchiveManager.get_global_value("c02_ready_to_fire"):
|
||||
bully_layer.get_node("Ambush霸凌").enabled = true
|
||||
else:
|
||||
GlobalFunctor.c02_fire_count_down_try_start()
|
||||
$"../DeployLayer/霸凌/f1/Sfx2D霸凌童谣".play()
|
||||
else:
|
||||
bully_layer.visible = false
|
||||
$VibeSfx.switch_to("c02_火灾")
|
||||
|
@ -288,12 +288,14 @@ data = {
|
||||
oneshot_animation = ""
|
||||
|
||||
[node name="Sfx闷雷" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("6_vddfx")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_ygnci")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx小鞋落地" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_df1yo")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_ygnci")
|
||||
@ -379,7 +381,17 @@ position = Vector2(132, 10)
|
||||
sprite_frames = ExtResource("4_gd6xp")
|
||||
animation = &"肉铺门口血迹"
|
||||
|
||||
[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="9"]
|
||||
[node name="Ambush小蝉消失" parent="Ground/DeployLayer" index="9" instance=ExtResource("25_iyaiw")]
|
||||
position = Vector2(274, 64)
|
||||
hook_method = "xiaochan_disappear"
|
||||
|
||||
[node name="ProSprite" parent="Ground/DeployLayer/Ambush小蝉消失" instance=ExtResource("33_ycojw")]
|
||||
position = Vector2(211, -7)
|
||||
sprite_frames = ExtResource("4_gd6xp")
|
||||
animation = &"小蝉背对转头"
|
||||
autoplay = "小蝉背对呼吸帧"
|
||||
|
||||
[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="10"]
|
||||
|
||||
[node name="灯笼" type="Sprite2D" parent="Ground/DeployLayer/灯笼"]
|
||||
position = Vector2(1644, -86)
|
||||
@ -426,7 +438,7 @@ color = Color(1, 0.0980392, 0, 1)
|
||||
energy = 0.7
|
||||
texture = SubResource("GradientTexture2D_kyfht")
|
||||
|
||||
[node name="新背景_奠" type="Node2D" parent="Ground/DeployLayer" index="10"]
|
||||
[node name="新背景_奠" type="Node2D" parent="Ground/DeployLayer" index="11"]
|
||||
visible = false
|
||||
|
||||
[node name="地上纸钱" type="Sprite2D" parent="Ground/DeployLayer/新背景_奠"]
|
||||
@ -461,7 +473,7 @@ position = Vector2(898, -162)
|
||||
z_index = 15
|
||||
position = Vector2(1964, -209)
|
||||
|
||||
[node name="闷雷_纸人闪现" type="Node2D" parent="Ground/DeployLayer" index="11"]
|
||||
[node name="闷雷_纸人闪现" type="Node2D" parent="Ground/DeployLayer" index="12"]
|
||||
visible = false
|
||||
|
||||
[node name="Ambush闷雷纸人" parent="Ground/DeployLayer/闷雷_纸人闪现" instance=ExtResource("25_iyaiw")]
|
||||
@ -488,15 +500,14 @@ range_layer_max = 2
|
||||
range_item_cull_mask = 4
|
||||
texture = SubResource("GradientTexture2D_3nako")
|
||||
|
||||
[node name="Ambush要下雨了" parent="Ground/DeployLayer" index="12" instance=ExtResource("25_iyaiw")]
|
||||
[node name="Ambush要下雨了" parent="Ground/DeployLayer" index="13" instance=ExtResource("25_iyaiw")]
|
||||
position = Vector2(1611, 46)
|
||||
hook_os_key = "c02_院子_要下雨"
|
||||
|
||||
[node name="Pickable小鞋子" parent="Ground/DeployLayer" index="13" instance=ExtResource("7_em2ma")]
|
||||
[node name="Pickable小鞋子" parent="Ground/DeployLayer" index="14" instance=ExtResource("7_em2ma")]
|
||||
position = Vector2(809, 75)
|
||||
sign_mark_offset = Vector2(0, -16.88)
|
||||
enabled = false
|
||||
action_key = 4
|
||||
prop_key = "prop_小鞋子2"
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/Pickable小鞋子"]
|
||||
@ -504,7 +515,7 @@ position = Vector2(0, -7)
|
||||
scale = Vector2(0.15, 0.15)
|
||||
texture = ExtResource("8_plfv5")
|
||||
|
||||
[node name="Interactable铁门" parent="Ground/DeployLayer" index="14" instance=ExtResource("8_xt8j0")]
|
||||
[node name="Interactable铁门" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_xt8j0")]
|
||||
light_mask = 5
|
||||
position = Vector2(1222, 28)
|
||||
texture = ExtResource("7_gd6xp")
|
||||
@ -513,6 +524,12 @@ action_key = 3
|
||||
interacted_texture = ExtResource("9_liq0c")
|
||||
prop_key = "prop_老虎钳"
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/Interactable铁门" index="0"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/Interactable铁门" index="1"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable铁门/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_er6ob")
|
||||
|
||||
@ -524,7 +541,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="15" instance=ExtResource("6_t48d1")]
|
||||
[node name="Note算命摊位" parent="Ground/DeployLayer" index="16" instance=ExtResource("6_t48d1")]
|
||||
position = Vector2(725, 45)
|
||||
note_key = "c02_院子_算命摊位"
|
||||
|
||||
@ -532,13 +549,13 @@ note_key = "c02_院子_算命摊位"
|
||||
position = Vector2(0, 18)
|
||||
texture = ExtResource("6_1tart")
|
||||
|
||||
[node name="煤油灯" parent="Ground/DeployLayer" index="16" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯" parent="Ground/DeployLayer" index="17" 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="17" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯2" parent="Ground/DeployLayer" index="18" instance=ExtResource("10_jme4f")]
|
||||
position = Vector2(610, 1)
|
||||
gaslight_texture = ExtResource("11_g0qhj")
|
||||
ground_light_texture = ExtResource("12_ni5ro")
|
||||
@ -546,7 +563,7 @@ gaslight_energy = 1.5
|
||||
gaslight_ground_energy = 0.7
|
||||
mute_when_interacted = false
|
||||
|
||||
[node name="煤油灯3" parent="Ground/DeployLayer" index="18" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯3" parent="Ground/DeployLayer" index="19" instance=ExtResource("10_jme4f")]
|
||||
position = Vector2(857, 1)
|
||||
gaslight_texture = ExtResource("13_hw832")
|
||||
ground_light_texture = ExtResource("14_7pq5y")
|
||||
@ -554,46 +571,46 @@ gaslight_energy = 1.5
|
||||
gaslight_ground_energy = 0.7
|
||||
mute_when_interacted = false
|
||||
|
||||
[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="19"]
|
||||
[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="20"]
|
||||
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="20"]
|
||||
[node name="药车" type="Sprite2D" parent="Ground/DeployLayer" index="21"]
|
||||
light_mask = 5
|
||||
z_index = 10
|
||||
position = Vector2(1025, 27)
|
||||
texture = ExtResource("22_3y5s5")
|
||||
|
||||
[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="21" instance=ExtResource("23_81juy")]
|
||||
[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="22" instance=ExtResource("23_81juy")]
|
||||
position = Vector2(466, 3)
|
||||
packed_scene = ExtResource("24_0o4rt")
|
||||
collision_width_and_x = Vector2(40, 0)
|
||||
|
||||
[node name="Closeup井" parent="Ground/DeployLayer" index="22" instance=ExtResource("23_81juy")]
|
||||
[node name="Closeup井" parent="Ground/DeployLayer" index="23" instance=ExtResource("23_81juy")]
|
||||
z_index = 6
|
||||
position = Vector2(2063, 50)
|
||||
packed_scene = ExtResource("26_yy4fp")
|
||||
|
||||
[node name="Ambush惊悚闪电" parent="Ground/DeployLayer" index="23" instance=ExtResource("25_iyaiw")]
|
||||
[node name="Ambush惊悚闪电" parent="Ground/DeployLayer" index="24" instance=ExtResource("25_iyaiw")]
|
||||
position = Vector2(1319, 40)
|
||||
hook_method = "shocking_lighting"
|
||||
|
||||
[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="24" instance=ExtResource("25_iyaiw")]
|
||||
[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="25" 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="25"]
|
||||
[node name="李氏赖子房间人影" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="26"]
|
||||
position = Vector2(1835, -16)
|
||||
sprite_frames = SubResource("SpriteFrames_0o4rt")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.643855
|
||||
|
||||
[node name="Npc井边疯子" parent="Ground/DeployLayer" index="26" instance=ExtResource("35_plfv5")]
|
||||
[node name="Npc井边疯子" parent="Ground/DeployLayer" index="27" instance=ExtResource("35_plfv5")]
|
||||
z_index = 10
|
||||
position = Vector2(2037, 67)
|
||||
sprite_frames = ExtResource("4_gd6xp")
|
||||
@ -614,7 +631,7 @@ position = Vector2(-11, -3)
|
||||
shape = SubResource("RectangleShape2D_bbhbr")
|
||||
disabled = true
|
||||
|
||||
[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="27"]
|
||||
[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="28"]
|
||||
visible = false
|
||||
position = Vector2(2154, 60)
|
||||
|
||||
@ -640,10 +657,10 @@ animation = &"霸凌1"
|
||||
autoplay = "霸凌1"
|
||||
|
||||
[node name="Sfx2D霸凌童谣" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/霸凌/f1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("46_qqdxs")
|
||||
volume_db = -5.0
|
||||
max_distance = 1000.0
|
||||
attenuation = 3.0
|
||||
attenuation = 2.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("54_o1qbs")
|
||||
loop = true
|
||||
@ -679,7 +696,7 @@ collision_mask = 0
|
||||
shape = SubResource("RectangleShape2D_d7h4s")
|
||||
disabled = true
|
||||
|
||||
[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="28"]
|
||||
[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="29"]
|
||||
visible = false
|
||||
|
||||
[node name="右窗" type="AnimatedSprite2D" parent="Ground/DeployLayer/火灾"]
|
||||
@ -913,6 +930,7 @@ animation = &"吕萍牵手动作"
|
||||
shape = SubResource("RectangleShape2D_vddfx")
|
||||
|
||||
[node name="Sfx2D跑步" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/火灾/牵手跑"]
|
||||
process_mode = 1
|
||||
stream = SubResource("AudioStreamRandomizer_fxne6")
|
||||
volume_db = 3.0
|
||||
bus = &"game_sfx"
|
||||
@ -920,7 +938,7 @@ script = ExtResource("54_o1qbs")
|
||||
loop = true
|
||||
metadata/_custom_type_script = "uid://wapo47a1oddf"
|
||||
|
||||
[node name="Interactable柜子" parent="Ground/DeployLayer" index="29" instance=ExtResource("8_xt8j0")]
|
||||
[node name="Interactable柜子" parent="Ground/DeployLayer" index="30" instance=ExtResource("8_xt8j0")]
|
||||
visible = false
|
||||
position = Vector2(1772, 48)
|
||||
texture = ExtResource("32_cpifc")
|
||||
|
@ -159,7 +159,6 @@ func _c02_final_show():
|
||||
func _on_exit_final_show(_arg):
|
||||
# 瞎、胖、蝉三人离开
|
||||
play("c02_final_show_end")
|
||||
SceneManager.freeze_player(0)
|
||||
# 小蝉动画通过 捂脸-呼吸-移动 来控制
|
||||
# 胖子与瞎子动画也是如此
|
||||
await get_tree().create_timer(0.5).timeout
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=51 format=3 uid="uid://cootarwb44vvh"]
|
||||
[gd_scene load_steps=52 format=3 uid="uid://cootarwb44vvh"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_qkymk"]
|
||||
[ext_resource type="Script" uid="uid://cbt0ubygchxvv" path="res://scene/ground/scene/c02/s06_animation.gd" id="2_4dg6u"]
|
||||
@ -781,7 +781,7 @@ tracks/3/keys = {
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"values": [{
|
||||
"args": [],
|
||||
"method": &"start_timer"
|
||||
"method": &"play"
|
||||
}]
|
||||
}
|
||||
|
||||
@ -797,6 +797,10 @@ _data = {
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(20, 70)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_7kxvk"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(20, 70)
|
||||
|
||||
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_wywax"]
|
||||
playback_mode = 1
|
||||
streams_count = 2
|
||||
@ -857,18 +861,21 @@ autoplay_group = &"c02_楼道2"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="Sfx翻找东西" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_lh55k")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_2e08x")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx擦亮火柴" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_wywax")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_2e08x")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx偷看关门" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_7kxvk")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_2e08x")
|
||||
@ -938,6 +945,12 @@ position = Vector2(616, -14)
|
||||
ground_light_texture = ExtResource("8_7x2h6")
|
||||
ground_height_offset = 15.0
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/煤油灯" index="0"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/煤油灯" index="1"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/煤油灯/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_lh55k")
|
||||
|
||||
@ -959,6 +972,19 @@ disable_prop_after_interacted = true
|
||||
prop_key = "prop_小鞋子1"
|
||||
prop_key2 = "prop_小鞋子2"
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/Interactable老鼠洞" index="0"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/Interactable老鼠洞" index="1"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable老鼠洞/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_7kxvk")
|
||||
|
||||
[node name="SignSnapper" parent="Ground/DeployLayer/Interactable老鼠洞" index="4"]
|
||||
radius = 15.0
|
||||
walk_to_edge = true
|
||||
|
||||
[node name="小老鼠拖鞋子" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="10"]
|
||||
visible = false
|
||||
position = Vector2(608, -15)
|
||||
@ -985,6 +1011,7 @@ action_configs = Array[Dictionary]([{
|
||||
}])
|
||||
|
||||
[node name="疯子撞墙Sfx2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/疯子撞墙"]
|
||||
process_mode = 1
|
||||
position = Vector2(5, 28)
|
||||
stream = SubResource("AudioStreamRandomizer_wywax")
|
||||
volume_db = 10.0
|
||||
@ -1110,6 +1137,7 @@ move_configs = Array[Dictionary]([{
|
||||
debug_mov_animation = "方瞎子走路-左"
|
||||
|
||||
[node name="Sfx2D脚步声" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/c02_final/瞎子"]
|
||||
process_mode = 1
|
||||
position = Vector2(-39, -20)
|
||||
stream = SubResource("AudioStreamRandomizer_4ndyv")
|
||||
bus = &"game_sfx"
|
||||
@ -1163,3 +1191,4 @@ blend_mode = 1
|
||||
|
||||
[editable path="Ground"]
|
||||
[editable path="Ground/DeployLayer/煤油灯"]
|
||||
[editable path="Ground/DeployLayer/Interactable老鼠洞"]
|
||||
|
@ -54,6 +54,7 @@ func _on_ground_ready() -> void:
|
||||
boxcat_portal.get_node("Sprite2D").texture = preload("uid://efhwoqtn21d8") # e_墙上纸张_boxcat
|
||||
else:
|
||||
$"../DeployLayer/Closeup画".enabled = true
|
||||
$"../DeployLayer/癞子偷窥/Sfx2D癞子呼吸".play()
|
||||
if boxcat_played:
|
||||
$"../DeployLayer/portal_left".status = "opened"
|
||||
# 玩过小猫游戏,画框内容更新 禁止再进入
|
||||
@ -123,7 +124,7 @@ func enter_room() -> void:
|
||||
ambush_lookback.enabled = false
|
||||
var player = SceneManager.get_player() as MainPlayer
|
||||
var player_x = 513.0
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.lock_player(0)
|
||||
var camera = SceneManager.get_camera_marker()
|
||||
var tween = create_tween()
|
||||
# 镜头右侧 limit 设置到 room_camera_r_limit
|
||||
@ -142,7 +143,7 @@ func enter_room() -> void:
|
||||
setup_rect_after_entered()
|
||||
sprite.visible = false
|
||||
player.hide_sprite = false
|
||||
SceneManager.release_player()
|
||||
SceneManager.unlock_player()
|
||||
interacting = false
|
||||
|
||||
|
||||
@ -161,7 +162,7 @@ func setup_rect_after_entered() -> void:
|
||||
|
||||
func look_back_hole():
|
||||
var darker_light = $"../AmbientLayer/下洞黑化Light" as PointLight2D
|
||||
SceneManager.freeze_player(0, 10)
|
||||
SceneManager.lock_player(0, 10)
|
||||
var laizi = $"../DeployLayer/癞子偷窥"
|
||||
laizi.visible = true
|
||||
var camera = SceneManager.get_camera_marker() as CameraFocusMarker
|
||||
@ -184,7 +185,7 @@ func look_back_hole():
|
||||
|
||||
func _on_shocked():
|
||||
SceneManager.pop_debug_dialog_info("音效", "惊吓")
|
||||
SceneManager.freeze_player(0, 11, true)
|
||||
SceneManager.player_action(11, true)
|
||||
SceneManager.get_player().animation_finished.connect(_on_shocked_finished, CONNECT_ONE_SHOT)
|
||||
$"Sfx吹灭蜡烛".play()
|
||||
await create_tween().tween_interval(0.6).finished
|
||||
@ -206,5 +207,5 @@ func _on_shocked():
|
||||
func _on_shocked_finished():
|
||||
# 起身位置向左偏移稍许
|
||||
SceneManager.get_player().position.x -= 12
|
||||
SceneManager.release_player()
|
||||
SceneManager.unlock_player()
|
||||
$"../DeployLayer/癞子偷窥".visible = false
|
||||
|
@ -125,6 +125,7 @@ autoplay_group = &"c02_房间里2"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="Sfx癞子对视惊吓" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_0qeqe")
|
||||
volume_db = 2.0
|
||||
bus = &"game_sfx"
|
||||
@ -132,12 +133,14 @@ script = ExtResource("3_t3h08")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx摔倒" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
process_mode = 1
|
||||
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"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_quq80")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_t3h08")
|
||||
@ -218,6 +221,12 @@ animation_low_mode = true
|
||||
hide_texture = true
|
||||
gaslight_energy = 2.0
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯" index="0"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯" index="1"]
|
||||
process_mode = 1
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_a48k2")
|
||||
|
||||
@ -289,6 +298,7 @@ animation = &"c02_王癞子_蹲着呼吸"
|
||||
autoplay = "c02_王癞子_蹲着呼吸"
|
||||
|
||||
[node name="Sfx2D癞子呼吸" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/癞子偷窥"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("20_ujhuc")
|
||||
volume_db = -5.0
|
||||
max_distance = 700.0
|
||||
@ -332,7 +342,6 @@ texture = ExtResource("12_1ws4i")
|
||||
position = Vector2(105, 70)
|
||||
texture = ExtResource("18_dkqw0")
|
||||
sign_mark_offset = Vector2(0, -9.34)
|
||||
action_key = 4
|
||||
prop_key = "prop_粘鼠板"
|
||||
|
||||
[node name="下洞黑化Light" type="PointLight2D" parent="Ground/AmbientLayer" index="0"]
|
||||
|
@ -132,9 +132,8 @@ func _on_counter_interacted():
|
||||
else:
|
||||
player.player_movement_rect.position.x += 60
|
||||
player.player_movement_rect.size.x -= 65
|
||||
SceneManager.freeze_player(0)
|
||||
var x = counter.global_position.x - player_pull_offset_x
|
||||
# 走到左侧
|
||||
# 走到左侧,自动 freeze/release
|
||||
player.walk_to_x(x).tween_callback(func():
|
||||
player.character = "吕萍推柜子"
|
||||
player.lock_move_right = true
|
||||
|
@ -87,7 +87,7 @@ script = ExtResource("3_kqj5r")
|
||||
autoplay_group = &"c02_房间里1"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="1"]
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
position = Vector2(26, 0)
|
||||
texture = ExtResource("3_ox8et")
|
||||
|
||||
@ -182,7 +182,6 @@ position = Vector2(373, -13.8031)
|
||||
gaslight_energy = 2.0
|
||||
gaslight_ground_energy = 2.0
|
||||
mute_when_interacted = false
|
||||
one_shot = false
|
||||
|
||||
[node name="拼接小猫玩具" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"]
|
||||
visible = false
|
||||
@ -222,7 +221,7 @@ hook_method = "first_enter_ambush"
|
||||
position = Vector2(198, -28.5923)
|
||||
texture = SubResource("GradientTexture2D_3ftnp")
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="4"]
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(315, 98)
|
||||
facing_direction = Vector2(1, 0)
|
||||
|
||||
@ -233,7 +232,7 @@ position = Vector2(193, 0)
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(50, 150, 510, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="7"]
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
energy = 0.9
|
||||
blend_mode = 1
|
||||
|
@ -22,6 +22,7 @@ script = ExtResource("2_7ah3n")
|
||||
oneshot_animation = ""
|
||||
|
||||
[node name="Sfx钻盒子演出" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_72mc1")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_r3hvb")
|
||||
|
@ -1,8 +1,10 @@
|
||||
[gd_scene load_steps=4 format=3 uid="uid://dd8dfoik0ig3y"]
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dd8dfoik0ig3y"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dnrql1t0j6v8i" path="res://scene/ground/script/c02/通用特写脚本.gd" id="1_jgyts"]
|
||||
[ext_resource type="Texture2D" uid="uid://d1seskftkw08q" path="res://asset/art/scene/c02/s08_瞎子卧室/ux_盒子猫初次特写.png" id="2_jo6o1"]
|
||||
[ext_resource type="Texture2D" uid="uid://cbql1i4hblmt1" path="res://asset/art/ui/prop_and_bag/特写通用遮罩.png" id="3_myoho"]
|
||||
[ext_resource type="PackedScene" uid="uid://dmysq4sxx8iqh" path="res://scene/entity/ux/content_inspector.tscn" id="4_4p6cc"]
|
||||
[ext_resource type="Texture2D" uid="uid://f186lvt5y2ql" path="res://asset/art/ui/prop_and_bag/inspect背景遮罩.png" id="5_i34yq"]
|
||||
|
||||
[node name="s08_画特写" type="CanvasLayer"]
|
||||
script = ExtResource("1_jgyts")
|
||||
@ -18,3 +20,27 @@ offset_top = -3.0
|
||||
offset_right = 585.0
|
||||
offset_bottom = 313.0
|
||||
texture = ExtResource("3_myoho")
|
||||
|
||||
[node name="ContentInspector" parent="." instance=ExtResource("4_4p6cc")]
|
||||
|
||||
[node name="遮罩" type="TextureRect" parent="ContentInspector"]
|
||||
offset_left = -35.0
|
||||
offset_top = -3.0
|
||||
offset_right = 585.0
|
||||
offset_bottom = 313.0
|
||||
texture = ExtResource("5_i34yq")
|
||||
|
||||
[node name="Label" type="Label" parent="ContentInspector/遮罩"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -20.0
|
||||
offset_top = -7.0
|
||||
offset_right = 20.0
|
||||
offset_bottom = 7.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "c02_小蝉盒子特写"
|
||||
|
@ -48,6 +48,8 @@ texture = ExtResource("5_75okh")
|
||||
[node name="ContentInspector" parent="." instance=ExtResource("6_ybyuk")]
|
||||
|
||||
[node name="遮罩" type="TextureRect" parent="ContentInspector"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = -35.0
|
||||
offset_top = -3.0
|
||||
offset_right = 585.0
|
||||
|
@ -109,6 +109,7 @@ sign_mark_offset = Vector2(0, -5)
|
||||
[node name="Pickable元宝" parent="." instance=ExtResource("12_6lwlv")]
|
||||
position = Vector2(44, 103)
|
||||
sign_mark_offset = Vector2(0, -20.95)
|
||||
action_key = 4
|
||||
prop_key = "prop_锡箔元宝"
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Pickable元宝"]
|
||||
|
@ -62,9 +62,10 @@ func _try_toggle_crawl():
|
||||
crawling_toggle_tween = create_tween()
|
||||
var crawl = down_pressing
|
||||
if crawl:
|
||||
SceneManager.freeze_player(0, 7)
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.player_action(7)
|
||||
else:
|
||||
SceneManager.freeze_player(0, 8, true)
|
||||
SceneManager.player_action(8, true)
|
||||
crawling_toggle_tween.tween_interval(0.4)
|
||||
if not crawl:
|
||||
crawling_toggle_tween.tween_callback(SceneManager.release_player)
|
||||
|
@ -396,18 +396,21 @@ script = ExtResource("1_s8k21")
|
||||
[node name="Root" type="Node2D" parent="."]
|
||||
|
||||
[node name="Sfx擦火柴" type="AudioStreamPlayer" parent="Root"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("2_yo1xc")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_r7yca")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx小蝉捂眼后笑声" type="AudioStreamPlayer" parent="Root"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("4_8edqb")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_r7yca")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx小蝉蒙眼" type="AudioStreamPlayer" parent="Root"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("5_kfwxg")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_r7yca")
|
||||
|
@ -4,7 +4,7 @@ extends Control
|
||||
|
||||
@onready var animation_player = $AnimationPlayer as AnimationPlayer
|
||||
@onready var animation_root = $AnimationRoot as Control
|
||||
@onready var sfx = %Sfx as Sfx
|
||||
@onready var sfx_click = %SfxClick as Sfx
|
||||
@onready var newgame_btn = %NewGame as Button
|
||||
@onready var resume_btn = %Resume as Button
|
||||
@onready var quit_btn = %Quit as Button
|
||||
@ -39,14 +39,14 @@ func _check_resume_btn():
|
||||
|
||||
|
||||
func _on_newgame_pressed():
|
||||
sfx.global_play()
|
||||
sfx_click.global_play()
|
||||
# 覆盖使用 1 号存档
|
||||
ArchiveManager.create_and_use_new_archive(1)
|
||||
_enter_main_scene()
|
||||
|
||||
|
||||
func _on_resume_pressed():
|
||||
sfx.global_play()
|
||||
sfx_click.global_play()
|
||||
# 继续一号存档
|
||||
if GlobalConfig.DEBUG:
|
||||
print("Resume")
|
||||
@ -64,7 +64,7 @@ func _enter_main_scene():
|
||||
|
||||
func _on_quit_pressed():
|
||||
# 退出时点击音效将无法播放
|
||||
#sfx.global_play()
|
||||
#sfx_click.global_play()
|
||||
SceneManager.quit_game()
|
||||
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
[gd_scene load_steps=11 format=3 uid="uid://c4ycvdsabi7lw"]
|
||||
[gd_scene load_steps=12 format=3 uid="uid://c4ycvdsabi7lw"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b4rw4hk7ns4m8" path="res://scene/index_page.gd" id="1_c7y7r"]
|
||||
[ext_resource type="Texture2D" uid="uid://bcc0bk34l5gbc" path="res://asset/art/ui/index_menu/菜单背景1.png" id="1_jxn4k"]
|
||||
[ext_resource type="AudioStream" uid="uid://cvttds81trcoc" path="res://asset/audio/sfx/UI/click.wav" id="2_te6ya"]
|
||||
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="3_5oc6i"]
|
||||
[ext_resource type="AudioStream" uid="uid://brs150xgqnyd5" path="res://asset/audio/专用/衔蝶_主菜单music人声版.mp3" id="4_te6ya"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_8kiap"]
|
||||
resource_name = "default"
|
||||
@ -64,13 +65,23 @@ grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="Sfx" type="AudioStreamPlayer" parent="."]
|
||||
[node name="SfxClick" type="AudioStreamPlayer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
stream = ExtResource("2_te6ya")
|
||||
volume_db = -8.285
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5oc6i")
|
||||
|
||||
[node name="SfxBGM" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("4_te6ya")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5oc6i")
|
||||
mode = "场景背景音"
|
||||
"自动开始" = true
|
||||
"循环播放" = true
|
||||
"感应玩家操作" = false
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
|
@ -4,7 +4,7 @@
|
||||
[ext_resource type="Texture2D" uid="uid://c2y4mpkygrmaf" path="res://asset/art/little_game/拼凑信件/桌面.png" id="2_0fxwt"]
|
||||
[ext_resource type="AudioStream" uid="uid://cxs1p014bq3bn" path="res://asset/audio/sfx/交互/序章/04_书店内_旋转信纸.wav" id="3_eph5y"]
|
||||
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="3_ifhby"]
|
||||
[ext_resource type="Texture2D" uid="uid://duxdnw1uhlpm5" path="res://asset/art/little_game/拼凑信件/信件碎片.png" id="3_mjf3s"]
|
||||
[ext_resource type="Texture2D" uid="uid://oh4e48nxm4j6" path="res://asset/art/little_game/拼凑信件/信件碎片.png" id="3_mjf3s"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_4e0jv"]
|
||||
atlas = ExtResource("3_mjf3s")
|
||||
|
@ -1,9 +1,8 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://cekhj65axie0p"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cekhj65axie0p"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://1xdb7s1nigv8" path="res://scene/prop/prop_inspector.gd" id="1_2wpwe"]
|
||||
[ext_resource type="Texture2D" uid="uid://f186lvt5y2ql" path="res://asset/art/ui/prop_and_bag/inspect背景遮罩.png" id="2_j83lq"]
|
||||
[ext_resource type="Texture2D" uid="uid://cvgw2mxrlr6io" path="res://asset/art/scene/c02/旧版/s02_走道/ux_进门鼠疫海报yz.png" id="2_wr575"]
|
||||
[ext_resource type="Texture2D" uid="uid://dwgxa5j6602vv" path="res://asset/art/ui/prop_and_bag/inspect文本衬底蒙版.png" id="4_hehdd"]
|
||||
[ext_resource type="FontVariation" uid="uid://1ryw42kej6lv" path="res://config/font_ui.tres" id="4_opug5"]
|
||||
|
||||
[node name="PropInspector" type="CanvasLayer"]
|
||||
@ -76,7 +75,7 @@ grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
size_flags_horizontal = 4
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("4_hehdd")
|
||||
texture = ExtResource("2_j83lq")
|
||||
|
||||
[node name="MarginContainer2" type="MarginContainer" parent="."]
|
||||
anchors_preset = 15
|
||||
|