demo 0.2.1 hotfix 弹珠多击;部分文案优化;音效优化
BIN
asset/art/scene/c02/s04_保卫科/e_小钳子提示.png
Normal file
After Width: | Height: | Size: 219 B |
34
asset/art/scene/c02/s04_保卫科/e_小钳子提示.png.import
Normal file
@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://hkrd6dd2nxkv"
|
||||
path="res://.godot/imported/e_小钳子提示.png-ee4b5aa0529e4147b552445d9eff7eae.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/scene/c02/s04_保卫科/e_小钳子提示.png"
|
||||
dest_files=["res://.godot/imported/e_小钳子提示.png-ee4b5aa0529e4147b552445d9eff7eae.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
|
Before Width: | Height: | Size: 183 B After Width: | Height: | Size: 183 B |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cs14llkvr3fg8"
|
||||
path="res://.godot/imported/弹珠墙面涂鸦提示.png-08c1bbb65088ecb68de655121f2a1bdf.ctex"
|
||||
path="res://.godot/imported/e_弹珠墙面涂鸦提示.png-825f109b9f934d17e12634e636196380.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/scene/c02/s04_保卫科/弹珠墙面涂鸦提示.png"
|
||||
dest_files=["res://.godot/imported/弹珠墙面涂鸦提示.png-08c1bbb65088ecb68de655121f2a1bdf.ctex"]
|
||||
source_file="res://asset/art/scene/c02/s04_保卫科/e_弹珠墙面涂鸦提示.png"
|
||||
dest_files=["res://.godot/imported/e_弹珠墙面涂鸦提示.png-825f109b9f934d17e12634e636196380.ctex"]
|
||||
|
||||
[params]
|
||||
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 125 KiB |
24
asset/audio/peiyin_new/c02/c02_9小蝉_游戏失败效果_fx.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bw2cu6xs8bv6y"
|
||||
path="res://.godot/imported/c02_9小蝉_游戏失败效果_fx.wav-78e73705c8fba9bb0b2282f04947bcf8.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/peiyin_new/c02/c02_9小蝉_游戏失败效果_fx.wav"
|
||||
dest_files=["res://.godot/imported/c02_9小蝉_游戏失败效果_fx.wav-78e73705c8fba9bb0b2282f04947bcf8.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/sfx/bgm/序章/鬼差追击.MP3
Normal file
19
asset/audio/sfx/bgm/序章/鬼差追击.MP3.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="mp3"
|
||||
type="AudioStreamMP3"
|
||||
uid="uid://csgc3241h5vin"
|
||||
path="res://.godot/imported/鬼差追击.MP3-499cf5622e51384ac240c25cf08d7314.mp3str"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/sfx/bgm/序章/鬼差追击.MP3"
|
||||
dest_files=["res://.godot/imported/鬼差追击.MP3-499cf5622e51384ac240c25cf08d7314.mp3str"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
BIN
asset/audio/sfx/bgm/第一章/打开铁门后不循环背景音.MP3
Normal file
19
asset/audio/sfx/bgm/第一章/打开铁门后不循环背景音.MP3.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="mp3"
|
||||
type="AudioStreamMP3"
|
||||
uid="uid://cm80s51o5xt0r"
|
||||
path="res://.godot/imported/打开铁门后不循环背景音.MP3-4616ac2763069f54bec960c43f9c2510.mp3str"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/sfx/bgm/第一章/打开铁门后不循环背景音.MP3"
|
||||
dest_files=["res://.godot/imported/打开铁门后不循环背景音.MP3-4616ac2763069f54bec960c43f9c2510.mp3str"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
@ -1,24 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://bw2cu6xs8bv6y"
|
||||
path="res://.godot/imported/游戏失败_FX.wav-eb8cf13a5573521a1f5630643073f04d.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/sfx/bgm/第一章/游戏失败_FX.wav"
|
||||
dest_files=["res://.godot/imported/游戏失败_FX.wav-eb8cf13a5573521a1f5630643073f04d.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/sfx/环境音/第一章/氛围不受欢迎的存在.mp3
Normal file
19
asset/audio/sfx/环境音/第一章/氛围不受欢迎的存在.mp3.import
Normal file
@ -0,0 +1,19 @@
|
||||
[remap]
|
||||
|
||||
importer="mp3"
|
||||
type="AudioStreamMP3"
|
||||
uid="uid://d0ef0felylt8d"
|
||||
path="res://.godot/imported/氛围不受欢迎的存在.mp3-dd937294e6c24d6a7034e3d3b9ec7fe9.mp3str"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/audio/sfx/环境音/第一章/氛围不受欢迎的存在.mp3"
|
||||
dest_files=["res://.godot/imported/氛围不受欢迎的存在.mp3-dd937294e6c24d6a7034e3d3b9ec7fe9.mp3str"]
|
||||
|
||||
[params]
|
||||
|
||||
loop=false
|
||||
loop_offset=0
|
||||
bpm=0
|
||||
beat_count=0
|
||||
bar_beats=4
|
@ -17,20 +17,6 @@
|
||||
小竹竿: 嘶,总觉得好像在哪见过... [ID:c02_围观B_1]
|
||||
=> END
|
||||
|
||||
~ c01_s06_四个小孩_对话1
|
||||
小肉圆: 这画是六指儿画的,你问他去! [ID:c01_4围观A_1]
|
||||
=> END
|
||||
|
||||
~ c01_s06_四个小孩_对话2
|
||||
小竹竿: 那个怪人是最近才出现的,总是透过门缝往院子里头看。 [ID:c02_围观B_2]
|
||||
小竹竿: 搞得大家都不去墙根底下玩儿了,真晦气。 [ID:c02_围观B_3]
|
||||
=> END
|
||||
|
||||
~ c01_s06_四个小孩_对话3
|
||||
孩子王: 我知道什么?知道也不能告诉你! [ID:c01_4残疾小孩_1]
|
||||
孩子王: 还有,以后别叫我六指儿! [ID:c01_4残疾小孩_2]
|
||||
=> END
|
||||
|
||||
~ c01_s06_谈论鬼差与猫鼠游戏
|
||||
大胖: 站住! [#wait=2.0] [ID:c01_5胖小孩_1]
|
||||
# 几个人凑过来
|
||||
|
@ -6,6 +6,7 @@ c02_11肉铺敲门_3,不做生意赶紧滚!,不做生意奥扫滚!,???
|
||||
摔倒了、哭⿐头、⼩脚上面出血了 [ID:],摔倒了、哭⿐头、⼩脚上面出血了 [ID:],,,,
|
||||
哭⿐头、哭⿐头~⼩脚⼩孩哭⿐头... [ID:],哭⿐头、哭⿐头~⼩脚⼩孩哭⿐头... [ID:],,,,
|
||||
c02_8小男孩童谣,下⾬了、打烊了、⼩脚⼩孩跳舞了,,,,
|
||||
c02_9小蝉_游戏失败效果,再见了,大姐姐。,再会了,大姐姐。,小蝉,,
|
||||
c02_纸人互动_离开公寓1,你要离开芦昌公寓吗?,,,,
|
||||
c02_纸人互动_离开公寓2,离开,,(response),,
|
||||
c02_纸人互动_离开公寓3,留下,,(response),,
|
||||
@ -61,7 +62,7 @@ c02_弹珠游戏6,先碰到边界你就输了!,,,,
|
||||
c02_尾声霸凌童谣1,下雨了、打烊了、小脚小孩跳舞了,,???,,[#wait=4.7]
|
||||
c02_尾声霸凌童谣2,摔倒了、哭鼻头、小脚上面出血了,,???,,[#wait=3.8]
|
||||
c02_尾声霸凌童谣3,哭鼻头、哭鼻头~小脚小孩哭鼻头...,,???,,[#wait=6]
|
||||
c02_9小蝉_游戏失败效果,再见了,大姐姐。,再会了,大姐姐。,小蝉,,
|
||||
c02_9小蝉_游戏失败效果_fx,再见了,大姐姐。,,小蝉,,
|
||||
c02_小孩喊着火啦1,着火啦!着火啦!,,男孩黄,,
|
||||
c02_小孩喊着火啦2,水!打水!,,男孩蓝,,
|
||||
c02_10小蝶_1,小姑娘,你是不是认得我啊?,小姑娘,侬阿是认得我啊?,吕萍,,[#ban_skip]
|
||||
|
|
@ -124,7 +124,7 @@
|
||||
=> END
|
||||
|
||||
~ c02_未完成拯救小蝉的游戏
|
||||
小蝉: 再见了,大姐姐。 [ID:c02_9小蝉_游戏失败效果]
|
||||
小蝉: 再见了,大姐姐。 [ID:c02_9小蝉_游戏失败效果_fx]
|
||||
=> END
|
||||
|
||||
~ c02_男孩们喊着火啦
|
||||
|
@ -104,7 +104,7 @@ prop_装有灵魂的令牌,装有灵魂的令牌,,,[#texture=c01/装有灵魂的
|
||||
prop_院长的信,院长的信,,,[#texture=c01/院长的信物品.png][#inspect=c01/院长的信.png],,
|
||||
prop_院长的信_说明,小萍:<br>你现下境况如何?<br>你虽离开浦育院已久,但我始终没有忘记为你祈祷。<br>愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。<br>你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。<br>若有闲暇,欢迎你回浦育院看看。<br>院长童玉君<br>民国二十一年十月十五日<br>公寓地址 芦昌路26弄3号,,,,,
|
||||
prop_船票,船票,,,[#texture=c02/船票.png],,
|
||||
prop_船票_说明,民国十九年十月十七日<br>上海-南京-济南-北平-林西-满洲里<br>三等舱 3-23 号铺位<br>船票早已订好,我本已不抱任何希望,直到院长给我回信。若今晚没能找到真相,我将带着这张通往未知的船票,在浪涛中打捞被时光吞噬的答案。<br>我的亲生父母是谁?当初他们为何要把我送到浦育院?,,,,,
|
||||
prop_船票_说明,民国二十一年十月十七日<br>上海-南京-济南-北平-林西-满洲里<br>三等舱 3-23 号铺位<br>船票早已订好,我本已不抱任何希望,直到院长给我回信。若今晚没能找到真相,我将带着这张通往未知的船票,在浪涛中打捞被时光吞噬的答案。<br>我的亲生父母是谁?当初他们为何要把我送到浦育院?,,,,,
|
||||
prop_眼镜盒,眼镜盒,,,[#texture=c02/眼镜盒.png],,
|
||||
prop_眼镜盒_说明,这副眼镜对我很重要。<br>记得小时候在浦育院的日子,我经常会在半夜时听到奇怪的说话声,还时不时能看见其他小孩子看不见的东西。<br>院长不知从哪儿找来了这样一副眼镜,戴上它后那些怪事就很少发生。<br>随着年龄增长,我几乎已用不到这副眼镜。现在它对我来说似乎有了新的意义。,,,,,
|
||||
prop_小蝉人偶,小蝉人偶,,,[#texture=c02/小蝉人偶.png],,
|
||||
@ -168,7 +168,7 @@ c02_小手是什么鬼,这是什么鬼东西,它是在讨要什么,,,,,
|
||||
c02_小手再次出现,又来一个!<br>这地方到底是怎么回事?,,,,,
|
||||
c02_一楼楼道被挡住,被挡住了,,,,,
|
||||
c02_一楼戏台,盖着布的木头架子...用来做什么的呢,,,,,
|
||||
c02_描述垃圾通道,桶是空的,飘着一股血气,又酸又腥。,,,,,
|
||||
c02_描述垃圾通道,通道是空的,飘着一股血气,又酸又腥。,,,,,
|
||||
c02_一楼疯子互动后,这人有点不正常...最好离他远点。,,,,,
|
||||
c02_一楼粘鼠板,这里原来放着什么?,,,,,
|
||||
c02_一楼死老鼠,老鼠被粘住死掉了。,,,,,
|
||||
|
|
@ -39,7 +39,7 @@
|
||||
按 Q 可退出 [ID:ui_center_notify_press_q_to_exit]
|
||||
按 E 使用道具 [ID:ui_center_notify_use_prop]
|
||||
按 N 查看线索笔记 [ID:ui_center_notify_check_note]
|
||||
按 B 查看重要物品 [ID:ui_center_notify_check_bag]
|
||||
按 B 查看重要物品 [ID:]
|
||||
右键点击可检阅道具 [ID:ui_center_notify_right_click_prop]
|
||||
按住鼠标拖拽可刮开海报 [ID:ui_left_mouse_shave]
|
||||
点击图标可切换道具(或按 Z/C) [ID:ui_switch_prop]
|
||||
@ -130,7 +130,7 @@
|
||||
小萍:<br>你现下境况如何?<br>你虽离开浦育院已久,但我始终没有忘记为你祈祷。<br>愿上帝保佑你走向真正光明的道路。我相信这也是当年你父亲将你托付给我时的殷切愿景。<br>你既已成人,无论你的父母出于何种理由选择与你分离,你都应当拥有知晓真相的权利,所以我将公寓地址附在了信后,除此之外,我亦知之甚少。<br>若有闲暇,欢迎你回浦育院看看。<br>院长童玉君<br>民国二十一年十月十五日<br>公寓地址 芦昌路26弄3号 [ID:prop_院长的信_说明]
|
||||
# c02
|
||||
船票 [#texture=c02/船票.png] [ID:prop_船票]
|
||||
民国十九年十月十七日<br>上海-南京-济南-北平-林西-满洲里<br>三等舱 3-23 号铺位<br>船票早已订好,我本已不抱任何希望,直到院长给我回信。若今晚没能找到真相,我将带着这张通往未知的船票,在浪涛中打捞被时光吞噬的答案。<br>我的亲生父母是谁?当初他们为何要把我送到浦育院? [ID:prop_船票_说明]
|
||||
民国二十一年十月十七日<br>上海-南京-济南-北平-林西-满洲里<br>三等舱 3-23 号铺位<br>船票早已订好,我本已不抱任何希望,直到院长给我回信。若今晚没能找到真相,我将带着这张通往未知的船票,在浪涛中打捞被时光吞噬的答案。<br>我的亲生父母是谁?当初他们为何要把我送到浦育院? [ID:prop_船票_说明]
|
||||
眼镜盒 [#texture=c02/眼镜盒.png] [ID:prop_眼镜盒]
|
||||
这副眼镜对我很重要。<br>记得小时候在浦育院的日子,我经常会在半夜时听到奇怪的说话声,还时不时能看见其他小孩子看不见的东西。<br>院长不知从哪儿找来了这样一副眼镜,戴上它后那些怪事就很少发生。<br>随着年龄增长,我几乎已用不到这副眼镜。现在它对我来说似乎有了新的意义。[ID:prop_眼镜盒_说明]
|
||||
小蝉人偶[#texture=c02/小蝉人偶.png] [ID:prop_小蝉人偶]
|
||||
@ -164,7 +164,7 @@
|
||||
这是鸡毛掸子吗? [ID:c01_鸡毛掸子]
|
||||
桌上放着一本《圣经》。<br>「得著生命的,將要失喪生命...」 [ID:c01_院长书桌]
|
||||
这本书已经看过了。<br>...那些句子是什么意思呢? [ID:c01_院长床]
|
||||
这西洋钟没坏的时候,走针会咔哒、咔哒地响...<br>停在申时三刻不动了。 [ID:c01_院长座钟]
|
||||
这西洋钟没坏的时候,走针会咔哒、咔哒地响...<br>停在未时一刻不动了。 [ID:c01_院长座钟]
|
||||
哇啊,这张洋相片要掉下来了!<br>我得做点什么... [ID:c01_倾斜的洋相片]
|
||||
这是院长的儿子吗? [ID:c01_摆正的洋相片]
|
||||
# c01-s06 院子
|
||||
@ -226,7 +226,7 @@
|
||||
#内侧楼道
|
||||
被挡住了 [ID:c02_一楼楼道被挡住]
|
||||
盖着布的木头架子...用来做什么的呢 [ID:c02_一楼戏台]
|
||||
桶是空的,飘着一股血气,又酸又腥。 [ID:c02_描述垃圾通道]
|
||||
通道是空的,飘着一股血气,又酸又腥。 [ID:c02_描述垃圾通道]
|
||||
这人有点不正常...最好离他远点。 [ID:c02_一楼疯子互动后]
|
||||
这里原来放着什么? [ID:c02_一楼粘鼠板]
|
||||
老鼠被粘住死掉了。 [ID:c02_一楼死老鼠]
|
||||
|
@ -1,4 +1,9 @@
|
||||
keys,zh_CN,zh_SH,_character,_notes,_tags
|
||||
c01_4围观A_1,这画是六指儿画的,你问他去!,这幅画是小跷脚画的,你起问他呀。,小肉圆,,
|
||||
c02_围观B_2,那个怪人是最近才出现的,总是透过门缝往院子里头看。,这老鬼三好像是近腔波出来的,老是亚了门板后头偷偷较往里厢看。,小竹竿,,
|
||||
c02_围观B_3,搞得大家都不去墙根底下玩儿了,真晦气。,弄得嘞依拉都不过去玩了,戳气死了。,小竹竿,,
|
||||
c01_4残疾小孩_1,我知道什么?知道也不能告诉你!,我晓得啥东西啦?就算晓得也不会讲给你们听的!,孩子王,,
|
||||
c01_4残疾小孩_2,还有,以后别叫我六指儿!,还有,下趟覅叫我小跷脚!,孩子王,,
|
||||
c01_6卖艺小孩A_1,您、您行行好,给点...,,小丁,,
|
||||
c01_6卖艺小孩B_1,祝恁身子骨儿杠赛来,吃嘛嘛香木个病,一年更比一年行!,,蛋蛋,,
|
||||
c01_6卖艺小孩C_1,宾安哗在,有才有财!,,沫儿,,
|
||||
|
|
@ -1,3 +1,18 @@
|
||||
~ c01_s06_四个小孩_对话1
|
||||
小肉圆: 这画是六指儿画的,你问他去! [ID:c01_4围观A_1]
|
||||
=> END
|
||||
|
||||
~ c01_s06_四个小孩_对话2
|
||||
小竹竿: 那个怪人是最近才出现的,总是透过门缝往院子里头看。 [ID:c02_围观B_2]
|
||||
小竹竿: 搞得大家都不去墙根底下玩儿了,真晦气。 [ID:c02_围观B_3]
|
||||
=> END
|
||||
|
||||
~ c01_s06_四个小孩_对话3
|
||||
孩子王: 我知道什么?知道也不能告诉你! [ID:c01_4残疾小孩_1]
|
||||
孩子王: 还有,以后别叫我六指儿! [ID:c01_4残疾小孩_2]
|
||||
=> END
|
||||
|
||||
|
||||
~ c01_s07_小孩吉祥话1
|
||||
#普通口音
|
||||
小丁: 您、您行行好,给点... [ID:c01_6卖艺小孩A_1]
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_resource type="Resource" script_class="VibeGroupCollection" load_steps=21 format=3 uid="uid://bfhwn1v0c2io7"]
|
||||
[gd_resource type="Resource" script_class="VibeGroupCollection" load_steps=22 format=3 uid="uid://bfhwn1v0c2io7"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cy1ngx5no67v" path="res://manager/audio_manager/vibe_group.gd" id="1_0bbao"]
|
||||
[ext_resource type="Script" uid="uid://bo8gxwe8hfs01" path="res://manager/audio_manager/vibe_group_collection.gd" id="2_h4hph"]
|
||||
@ -11,6 +11,7 @@
|
||||
[ext_resource type="AudioStream" uid="uid://c6ehv3lgway26" path="res://asset/audio/sfx/环境音/白噪音/白噪声诡异室外.wav" id="8_ehphf"]
|
||||
[ext_resource type="AudioStream" uid="uid://bal423qlb3jp2" path="res://asset/audio/sfx/环境音/点缀音/sfx_夜晚虫鸣.wav" id="9_tydt5"]
|
||||
[ext_resource type="AudioStream" uid="uid://s7uigovfp5g3" path="res://asset/audio/sfx/环境音/第一章/火灾演出.wav" id="10_bxcxa"]
|
||||
[ext_resource type="AudioStream" uid="uid://d0ef0felylt8d" path="res://asset/audio/sfx/环境音/第一章/氛围不受欢迎的存在.mp3" id="11_scrw7"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_bjndi"]
|
||||
script = ExtResource("1_0bbao")
|
||||
@ -66,24 +67,6 @@ base_sound_db = 0.0
|
||||
embellishments = Array[ExtResource("3_scrw7")]([])
|
||||
metadata/_custom_type_script = "uid://cy1ngx5no67v"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_s3jju"]
|
||||
script = ExtResource("3_scrw7")
|
||||
sound = ExtResource("9_tydt5")
|
||||
db = 0.0
|
||||
loop = false
|
||||
min_interval = 5.0
|
||||
max_interval = 10.0
|
||||
metadata/_custom_type_script = "uid://eydkufjbf7n6"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_n45nr"]
|
||||
script = ExtResource("1_0bbao")
|
||||
group_name = &"c02_楼道虫鸣"
|
||||
group_db = -5.0
|
||||
base_sound = ExtResource("6_u0i77")
|
||||
base_sound_db = 0.0
|
||||
embellishments = Array[ExtResource("3_scrw7")]([SubResource("Resource_s3jju")])
|
||||
metadata/_custom_type_script = "uid://cy1ngx5no67v"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_j0xlt"]
|
||||
script = ExtResource("1_0bbao")
|
||||
group_name = &"c02_火灾"
|
||||
@ -93,7 +76,25 @@ base_sound_db = 0.0
|
||||
embellishments = Array[ExtResource("3_scrw7")]([])
|
||||
metadata/_custom_type_script = "uid://cy1ngx5no67v"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_f75a1"]
|
||||
script = ExtResource("1_0bbao")
|
||||
group_name = &"氛围_不受欢迎的存在"
|
||||
group_db = 0.0
|
||||
base_sound = ExtResource("11_scrw7")
|
||||
base_sound_db = -9.0
|
||||
embellishments = Array[ExtResource("3_scrw7")]([])
|
||||
metadata/_custom_type_script = "uid://cy1ngx5no67v"
|
||||
|
||||
[sub_resource type="Resource" id="Resource_scrw7"]
|
||||
script = ExtResource("1_0bbao")
|
||||
group_name = &"夜晚虫鸣"
|
||||
group_db = 0.0
|
||||
base_sound = ExtResource("9_tydt5")
|
||||
base_sound_db = -10.0
|
||||
embellishments = Array[ExtResource("3_scrw7")]([])
|
||||
metadata/_custom_type_script = "uid://cy1ngx5no67v"
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_h4hph")
|
||||
groups = Array[ExtResource("1_0bbao")]([SubResource("Resource_bjndi"), SubResource("Resource_chrc1"), SubResource("Resource_7c7wx"), SubResource("Resource_an5bn"), SubResource("Resource_egnaw"), SubResource("Resource_e3r3f"), SubResource("Resource_n45nr"), SubResource("Resource_j0xlt")])
|
||||
groups = Array[ExtResource("1_0bbao")]([SubResource("Resource_bjndi"), SubResource("Resource_chrc1"), SubResource("Resource_7c7wx"), SubResource("Resource_an5bn"), SubResource("Resource_egnaw"), SubResource("Resource_e3r3f"), SubResource("Resource_j0xlt"), SubResource("Resource_f75a1"), SubResource("Resource_scrw7")])
|
||||
metadata/_custom_type_script = "uid://bo8gxwe8hfs01"
|
||||
|
@ -7,6 +7,7 @@ class_name BgmControl extends Node
|
||||
@export var stop_ease_duration := 3.0
|
||||
@export var stop_on_ground_ease_out := false
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
if not bgm_title:
|
||||
printerr("[BgmControl] no title fond!")
|
||||
@ -16,6 +17,10 @@ func _ready() -> void:
|
||||
if not bgm_stream:
|
||||
printerr("bgm_stream is null, please check the BGM settings.")
|
||||
return
|
||||
start()
|
||||
|
||||
|
||||
func start():
|
||||
AudioManager.loop_bgm_music(bgm_title, bgm_stream, db)
|
||||
|
||||
|
||||
|
@ -50,7 +50,6 @@ func global_play() -> void:
|
||||
AudioManager.play_sfx(stream)
|
||||
|
||||
|
||||
# 注意:会导致 volume db 变化
|
||||
func easing_kill(duration: float = 2.0) -> Tween:
|
||||
# stop with easing
|
||||
var tween = create_tween()
|
||||
|
@ -17,13 +17,14 @@ class_name Sfx2D extends AudioStreamPlayer2D
|
||||
play()
|
||||
|
||||
var timer: Timer
|
||||
|
||||
var default_db := 0.0
|
||||
|
||||
func _ready() -> void:
|
||||
bus = &"game_sfx"
|
||||
process_mode = Node.PROCESS_MODE_PAUSABLE
|
||||
process_mode = Node.PROCESS_MODE_INHERIT
|
||||
if Engine.is_editor_hint():
|
||||
return
|
||||
default_db = volume_db
|
||||
timer = Timer.new()
|
||||
timer.autostart = autoplay and loop and loop_round_time > 0.0 and not Engine.is_editor_hint()
|
||||
timer.one_shot = false
|
||||
@ -67,11 +68,13 @@ func global_play() -> void:
|
||||
AudioManager.play_sfx(stream)
|
||||
|
||||
|
||||
# 注意:会导致 volume db 变化
|
||||
func easing_kill(duration: float = 2.0) -> void:
|
||||
func easing_kill(duration: float = 2.0) -> Tween:
|
||||
# stop with easing
|
||||
if playing:
|
||||
var tween = create_tween()
|
||||
tween.bind_node(self)
|
||||
if playing:
|
||||
tween.tween_property(self, "volume_linear", 0.0, duration)
|
||||
tween.tween_callback(stop)
|
||||
# set volume_db back to default
|
||||
tween.tween_callback(func(): volume_db = default_db)
|
||||
return tween
|
@ -51,12 +51,12 @@ func reset() -> void:
|
||||
_check_display()
|
||||
|
||||
|
||||
# 渐渐浮现
|
||||
func enable_with_ease(duration := 1.0):
|
||||
enabled = true
|
||||
if not picked:
|
||||
var tween = create_tween()
|
||||
tween.tween_property(self, "modulate:a", 1.0, duration).from(0.0)
|
||||
# # 渐渐浮现
|
||||
# func enable_with_ease(duration := 1.0):
|
||||
# enabled = true
|
||||
# if not picked:
|
||||
# var tween = create_tween()
|
||||
# tween.tween_property(self, "modulate:a", 1.0, duration).from(0.0)
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
@ -90,7 +90,7 @@ func _check_display():
|
||||
if picked:
|
||||
visible = false
|
||||
elif visible_follow_enabled:
|
||||
modulate.a = 1.0 if enabled else 0.0
|
||||
visible = enabled
|
||||
sign_mark.enabled = enabled and is_visible_in_tree()
|
||||
|
||||
|
||||
|
@ -50,6 +50,11 @@ func _on_ground_ready() -> void:
|
||||
interactable_obstacles = $"../DeployLayer/Interactable桌椅"
|
||||
interactable_obstacles.interacted.connect(_on_push_obstacles)
|
||||
cat_rat_game_fail_ambush = $"../DeployLayer/【胖小孩背着残疾小孩】/【单残疾小孩】/猫鼠游戏失败ambush"
|
||||
|
||||
standing_kid1.get_node("Npc对话1").interacted.connect(_on_talked.bind(1))
|
||||
standing_kid2.get_node("Npc对话2").interacted.connect(_on_talked.bind(2))
|
||||
game_kid.get_node("Npc对话3").interacted.connect(_on_talked.bind(3))
|
||||
|
||||
# 等待游戏开始后启用
|
||||
cat_rat_game_fail_ambush.enabled = false
|
||||
cat_rat_game_start_ambush = $"../DeployLayer/猫鼠游戏开始ambush"
|
||||
@ -69,15 +74,6 @@ func _on_ground_ready() -> void:
|
||||
# 解除镜头 x 右侧限制
|
||||
SceneManager.get_camera_marker().limit_right = 10000
|
||||
|
||||
#talk count
|
||||
talk_count = 0
|
||||
if standing_kid1.get_node("对话1ambush").played:
|
||||
talk_count += 1
|
||||
if standing_kid2.get_node("对话2ambush").played:
|
||||
talk_count += 1
|
||||
if game_kid.get_node("对话3ambush").played:
|
||||
talk_count += 1
|
||||
|
||||
# 玩家不能超过开始跑的位置
|
||||
var player = SceneManager.get_player() as MainPlayer
|
||||
if player.position.x > 1800:
|
||||
@ -108,9 +104,9 @@ func pre_game_intro():
|
||||
|
||||
|
||||
func game_intro() -> void:
|
||||
standing_kid1.get_node("对话1ambush").enabled = false
|
||||
standing_kid2.get_node("对话2ambush").enabled = false
|
||||
game_kid.get_node("对话3ambush").enabled = false
|
||||
standing_kid1.get_node("Npc对话1").enabled = false
|
||||
standing_kid2.get_node("Npc对话2").enabled = false
|
||||
game_kid.get_node("Npc对话3").enabled = false
|
||||
|
||||
# 禁用猫鼠游戏开始 ambush 检测
|
||||
cat_rat_game_start_ambush.enabled = false
|
||||
@ -149,28 +145,19 @@ func _game_counting_down(_res = null):
|
||||
cat.get_node("猫咪嘶吼音效").play()
|
||||
|
||||
|
||||
# 与小孩 1 对话
|
||||
func talk1():
|
||||
_on_talked()
|
||||
|
||||
|
||||
# 与小孩 2 对话
|
||||
func talk2():
|
||||
_on_talked()
|
||||
|
||||
|
||||
# 与残疾小孩对话
|
||||
func talk3():
|
||||
_on_talked()
|
||||
|
||||
|
||||
# 玩家与三个小孩的互动计数
|
||||
var talk_count := 0
|
||||
|
||||
|
||||
func _on_talked():
|
||||
talk_count += 1
|
||||
if talk_count == 3:
|
||||
func _on_talked(id: int):
|
||||
#talk count
|
||||
if (
|
||||
standing_kid1.get_node("Npc对话1").icount > 0
|
||||
and standing_kid2.get_node("Npc对话2").icount > 0
|
||||
and game_kid.get_node("Npc对话3").icount > 0
|
||||
):
|
||||
if (
|
||||
(id == 1 and standing_kid1.get_node("Npc对话1").icount == 1)
|
||||
or (id == 2 and standing_kid2.get_node("Npc对话2").icount == 1)
|
||||
or (id == 3 and game_kid.get_node("Npc对话3").icount == 1)
|
||||
):
|
||||
# 三个小孩都对话完毕
|
||||
await DialogueManager.dialogue_ended
|
||||
SceneManager.lock_player()
|
||||
@ -217,8 +204,10 @@ func _on_push_obstacles():
|
||||
$"桌椅撞倒音效".play()
|
||||
SceneManager.pop_debug_dialog_info("音效", "桌椅翻倒")
|
||||
|
||||
|
||||
var current_round_failed = false
|
||||
|
||||
|
||||
# 小孩1首先跑到桌椅旁
|
||||
func obstacles_ambush1_triggered():
|
||||
if obstacles_success:
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=43 format=3 uid="uid://bx16c8nn32f40"]
|
||||
[gd_scene load_steps=44 format=3 uid="uid://bx16c8nn32f40"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_bitx7"]
|
||||
[ext_resource type="Script" uid="uid://don6fobmq0h6x" path="res://scene/ground/scene/c01/s06_孤儿院长廊围墙.gd" id="2_fkfhi"]
|
||||
@ -31,6 +31,7 @@
|
||||
[ext_resource type="SpriteFrames" uid="uid://cramkual6vemp" path="res://asset/art/scene/c01/s06_孤儿院长廊围墙/fg_花圃.gif" id="15_wtosl"]
|
||||
[ext_resource type="AudioStream" uid="uid://c6fa4naudow04" path="res://asset/audio/sfx/交互/序章/02_孤儿院走廊_猫咪嘶吼.wav" id="16_huyl5"]
|
||||
[ext_resource type="Texture2D" uid="uid://dol25yn3fixim" path="res://asset/art/fog_mask.png" id="17_rdmp5"]
|
||||
[ext_resource type="PackedScene" uid="uid://0sofmhrl358m" path="res://scene/entity/npc.tscn" id="24_phfqg"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_723yg"]
|
||||
length = 0.001
|
||||
@ -151,7 +152,7 @@ libraries = {
|
||||
script = ExtResource("2_fkfhi")
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"enabled_items": {},
|
||||
"player_x": 2000.0
|
||||
"player_x": 1500.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"AnimationPlayer": {
|
||||
@ -291,7 +292,7 @@ speed = 90.0
|
||||
position = Vector2(1241, -1)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"秋千"
|
||||
frame = 5
|
||||
frame = 4
|
||||
|
||||
[node name="Sfx2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/秋千"]
|
||||
process_mode = 1
|
||||
@ -321,7 +322,7 @@ position = Vector2(1358, 0)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"跷跷板"
|
||||
autoplay = "跷跷板"
|
||||
frame = 3
|
||||
frame = 4
|
||||
|
||||
[node name="Sfx2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/跷跷板"]
|
||||
process_mode = 1
|
||||
@ -349,6 +350,7 @@ position = Vector2(1593, 44)
|
||||
position = Vector2(0, -44.5)
|
||||
sprite_frames = ExtResource("7_dsj2r")
|
||||
animation = &"【画画小女孩】呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "【画画小女孩】画画",
|
||||
"animation_next": "【画画小女孩】回头",
|
||||
@ -370,7 +372,6 @@ action_configs = Array[Dictionary]([{
|
||||
position = Vector2(43, -44.5)
|
||||
sprite_frames = ExtResource("7_dsj2r")
|
||||
animation = &"【画画男孩-1】呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "【画画男孩-1】呼吸",
|
||||
"animation_next": "【画画男孩-1】画画",
|
||||
@ -426,7 +427,6 @@ one_shot = false
|
||||
position = Vector2(1558, -12)
|
||||
sprite_frames = ExtResource("7_dsj2r")
|
||||
animation = &"【站立小孩-3】呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": &"【站立小孩-3】转身",
|
||||
"animation_next": "【站立小孩-3】走路",
|
||||
@ -501,12 +501,10 @@ enabled = false
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-1】/猫鼠游戏重置ambush/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_7cdhx")
|
||||
|
||||
[node name="对话1ambush" parent="Ground/DeployLayer/【站立小孩-1】" instance=ExtResource("11_tudob")]
|
||||
position = Vector2(0, 51)
|
||||
trigger_mode = "interact"
|
||||
cooldown_time = 1.0
|
||||
hook_dialogue_title = "c01_s06_四个小孩_对话1"
|
||||
hook_method = "talk1"
|
||||
[node name="Npc对话1" parent="Ground/DeployLayer/【站立小孩-1】" instance=ExtResource("24_phfqg")]
|
||||
position = Vector2(0, 71)
|
||||
speaking_sign_height = 39.23
|
||||
dialogue_title = "c01_s06_四个小孩_对话1"
|
||||
|
||||
[node name="【站立小孩-2】" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_ouldg")]
|
||||
z_index = 10
|
||||
@ -514,7 +512,6 @@ position = Vector2(1505, 19)
|
||||
sprite_frames = ExtResource("7_dsj2r")
|
||||
animation = &"【站立小孩-2】侧面呼吸"
|
||||
autoplay = "【站立小孩-2】侧面呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "【站立小孩-2】转身",
|
||||
"animation_next": "【站立小孩-2】走路",
|
||||
@ -555,14 +552,6 @@ collision_mask = 64
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-2】/桌椅ambush2/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_ceat6")
|
||||
|
||||
[node name="对话2ambush" parent="Ground/DeployLayer/【站立小孩-2】" instance=ExtResource("11_tudob")]
|
||||
position = Vector2(2, 39)
|
||||
sign_mark_offset = Vector2(0, -3.86)
|
||||
trigger_mode = "interact"
|
||||
cooldown_time = 1.0
|
||||
hook_dialogue_title = "c01_s06_四个小孩_对话2"
|
||||
hook_method = "talk2"
|
||||
|
||||
[node name="猫鼠游戏重置ambush" parent="Ground/DeployLayer/【站立小孩-2】" instance=ExtResource("11_tudob")]
|
||||
position = Vector2(0, 53)
|
||||
enabled = false
|
||||
@ -575,6 +564,11 @@ enabled = false
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/【站立小孩-2】/猫鼠游戏重置ambush/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_7cdhx")
|
||||
|
||||
[node name="Npc对话2" parent="Ground/DeployLayer/【站立小孩-2】" instance=ExtResource("24_phfqg")]
|
||||
position = Vector2(2, 52)
|
||||
speaking_sign_height = 34.95
|
||||
dialogue_title = "c01_s06_四个小孩_对话2"
|
||||
|
||||
[node name="【墙上黑猫】" parent="Ground/DeployLayer" index="16" instance=ExtResource("8_ouldg")]
|
||||
position = Vector2(1453, -14)
|
||||
scale = Vector2(0.8, 0.8)
|
||||
@ -607,7 +601,7 @@ z_index = 1
|
||||
position = Vector2(1733, 5)
|
||||
sprite_frames = ExtResource("7_dsj2r")
|
||||
animation = &"【胖小孩背着残疾小孩】画画"
|
||||
frame = 5
|
||||
frame = 6
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "【胖小孩背着残疾小孩】呼吸",
|
||||
"animation_next": "【胖小孩背着残疾小孩】画画",
|
||||
@ -692,12 +686,10 @@ enabled = false
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】/【单残疾小孩】/猫鼠游戏失败ambush/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_7cdhx")
|
||||
|
||||
[node name="对话3ambush" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】" instance=ExtResource("11_tudob")]
|
||||
position = Vector2(-2, 37)
|
||||
trigger_mode = "interact"
|
||||
cooldown_time = 1.0
|
||||
hook_dialogue_title = "c01_s06_四个小孩_对话3"
|
||||
hook_method = "talk3"
|
||||
[node name="Npc对话3" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】" instance=ExtResource("24_phfqg")]
|
||||
position = Vector2(3, 53)
|
||||
speaking_sign_height = 39.23
|
||||
dialogue_title = "c01_s06_四个小孩_对话3"
|
||||
|
||||
[node name="猫鼠游戏胜利ambush" parent="Ground/DeployLayer" index="19" instance=ExtResource("11_tudob")]
|
||||
position = Vector2(4546, 45)
|
||||
@ -747,18 +739,20 @@ position = Vector2(377, 18)
|
||||
scale = Vector2(0.9, 0.9)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"中蓝衣小孩呼吸"
|
||||
frame = 2
|
||||
frame = 1
|
||||
|
||||
[node name="门口_右绿衣男孩" parent="Ground/ParallaxForeground/BGParallaxLayer" index="3" instance=ExtResource("8_ouldg")]
|
||||
position = Vector2(408, 3)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"右绿衣男孩呼吸"
|
||||
frame = 1
|
||||
|
||||
[node name="门口_红衣姑娘" parent="Ground/ParallaxForeground/BGParallaxLayer" index="4" instance=ExtResource("8_ouldg")]
|
||||
light_mask = 2
|
||||
position = Vector2(333, 9.5)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"红衣姑娘呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": &"红衣姑娘抬头",
|
||||
"animation_next": "红衣姑娘呼吸",
|
||||
@ -779,7 +773,6 @@ texture_scale = 0.5
|
||||
position = Vector2(301, 8.5)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"院长呼吸"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "院长翻书",
|
||||
"animation_next": "院长呼吸",
|
||||
@ -796,7 +789,6 @@ action_configs = Array[Dictionary]([{
|
||||
position = Vector2(273, 15)
|
||||
sprite_frames = ExtResource("2_l4axy")
|
||||
animation = &"左2黄衣男呼吸"
|
||||
frame = 2
|
||||
|
||||
[node name="门口_左一绿衣男" parent="Ground/ParallaxForeground/BGParallaxLayer" index="7" instance=ExtResource("8_ouldg")]
|
||||
position = Vector2(242, 46.5)
|
||||
@ -813,6 +805,7 @@ scale = Vector2(0.8, 0.8)
|
||||
sprite_frames = ExtResource("15_wtosl")
|
||||
animation = &"gif"
|
||||
autoplay = "gif"
|
||||
frame = 1
|
||||
centered = false
|
||||
offset = Vector2(0, -159)
|
||||
|
||||
|
@ -72,8 +72,23 @@ data = {
|
||||
"oneshot_animation_played": false
|
||||
}
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"enabled_items": PackedStringArray("prop_火柴", "prop_院长的信", "prop_银元"),
|
||||
"player_x": 30.0
|
||||
"enabled_items": {},
|
||||
"player_x": 2000.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"Ambush报童": {
|
||||
"played": false
|
||||
},
|
||||
"Ambush监督小孩": {
|
||||
"played": false
|
||||
},
|
||||
"Ambush陆仁收刀": {
|
||||
"played": false
|
||||
},
|
||||
"AnimationPlayer": {
|
||||
"fog_disappeared": false,
|
||||
"oneshot_animation_played": false
|
||||
}
|
||||
})
|
||||
oneshot_animation = ""
|
||||
|
||||
@ -182,7 +197,7 @@ position = Vector2(1045, 6)
|
||||
sprite_frames = ExtResource("6_thm8f")
|
||||
animation = &"陆仁舞刀-黄昏带红缨"
|
||||
autoplay = "陆仁舞刀-黄昏带红缨"
|
||||
frame = 20
|
||||
frame = 42
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "陆仁收刀",
|
||||
&"animation_next": "陆仁收刀后呼吸",
|
||||
@ -252,7 +267,7 @@ position = Vector2(2080, 6)
|
||||
sprite_frames = ExtResource("6_thm8f")
|
||||
animation = &"报童待机"
|
||||
autoplay = "报童待机"
|
||||
frame = 5
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "报童给报纸",
|
||||
"animation_next": "报童待机",
|
||||
|
@ -99,12 +99,12 @@ func first_enter_door() -> void:
|
||||
|
||||
func assign_tasks() -> void:
|
||||
# 放报纸动作
|
||||
SceneManager.freeze_player(0, 8, false)
|
||||
SceneManager.lock_player(0, 8, true)
|
||||
await Util.wait(4.5)
|
||||
$"放报纸音效".play()
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s08_书店老板任务")
|
||||
await DialogueManager.dialogue_ended
|
||||
SceneManager.release_player()
|
||||
SceneManager.unlock_player()
|
||||
ladder.enabled = true
|
||||
envolope_table.enabled = true
|
||||
|
||||
|
@ -58,6 +58,31 @@ libraries = {
|
||||
&"": SubResource("AnimationLibrary_xqgjo")
|
||||
}
|
||||
script = ExtResource("2_0lque")
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"c01_shelf_game_success": false,
|
||||
"enabled_items": {
|
||||
"prop_信碎片1": true
|
||||
},
|
||||
"envelope_game_success": false,
|
||||
"player_x": 30.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"Ambush梯子": {
|
||||
"played": false
|
||||
},
|
||||
"Ambush银元": {
|
||||
"played": false
|
||||
},
|
||||
"AnimationPlayer": {
|
||||
"oneshot_animation_played": false
|
||||
},
|
||||
"Interactable信件书桌": {
|
||||
"interacted_times": 0
|
||||
},
|
||||
"Interactable报纸柜台": {
|
||||
"interacted_times": 0
|
||||
}
|
||||
})
|
||||
oneshot_animation = "one_shot"
|
||||
|
||||
[node name="环境音" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="0"]
|
||||
@ -194,6 +219,13 @@ offset = Vector2(317, 0)
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(437, 98)
|
||||
character = "小小蝶"
|
||||
player_movement_rect = Rect2(22, -158, 523, 316)
|
||||
|
||||
[node name="CameraFocusMarker" parent="Ground" index="6"]
|
||||
limit_left = 0
|
||||
limit_top = -158
|
||||
limit_right = 576
|
||||
limit_bottom = 158
|
||||
|
||||
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
|
||||
position = Vector2(-1, 22)
|
||||
|
@ -85,6 +85,13 @@ bgm_title = "诡异环境音2"
|
||||
bgm_stream = ExtResource("6_lrqbi")
|
||||
metadata/_custom_type_script = "uid://bbg4vopj4apl6"
|
||||
|
||||
[node name="Bgm鬼差追逐" type="Node" parent="Ground/AnimationPlayer" index="2"]
|
||||
script = ExtResource("5_hy0mc")
|
||||
mode = "stop"
|
||||
bgm_title = "Bgm鬼差追逐"
|
||||
stop_ease_duration = 10.0
|
||||
metadata/_custom_type_script = "uid://bbg4vopj4apl6"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
position = Vector2(0, -15)
|
||||
texture = ExtResource("3_828bq")
|
||||
@ -155,7 +162,6 @@ bus = &"game_sfx"
|
||||
script = ExtResource("11_6w7lv")
|
||||
|
||||
[node name="Sfx鬼差擦肩而过" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Ghost"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("8_sq0x2")
|
||||
max_distance = 500.0
|
||||
bus = &"game_sfx"
|
||||
@ -173,7 +179,6 @@ autoplay = "书店老板害怕"
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/书店老板害怕/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -199,7 +204,6 @@ autoplay = "孤儿院小孩害怕1"
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/孤儿院小孩害怕1/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -226,7 +230,6 @@ position = Vector2(7, 0)
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/孤儿院小孩害怕2/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -252,7 +255,6 @@ autoplay = "举碗小孩害怕"
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/杂戏团小孩害怕1/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -279,7 +281,6 @@ position = Vector2(-26, 1)
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/杂戏团小孩害怕2/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -305,7 +306,6 @@ autoplay = "夜晚举腿小孩害怕"
|
||||
script = ExtResource("20_nwvnr")
|
||||
|
||||
[node name="Sfx鬼差浮现" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/杂戏团小孩害怕3/鬼影浮现"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("7_5sju7")
|
||||
max_distance = 1000.0
|
||||
attenuation = 2.0
|
||||
@ -356,6 +356,13 @@ texture = ExtResource("12_828bq")
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(41, 103)
|
||||
character = "小小蝶"
|
||||
player_movement_rect = Rect2(37, -158, 3423, 316)
|
||||
|
||||
[node name="CameraFocusMarker" parent="Ground" index="6"]
|
||||
limit_left = 0
|
||||
limit_top = -165
|
||||
limit_right = 3500
|
||||
limit_bottom = 165
|
||||
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(37, 150, 3460, 150)
|
||||
|
@ -77,6 +77,11 @@ func ambush_begger_interacted():
|
||||
interactable_bowl.enabled = true
|
||||
|
||||
|
||||
func _ghost_appear_sfx():
|
||||
$"Sfx鬼差出场".play()
|
||||
Util.timer(3.0, $"Bgm鬼差追逐".start)
|
||||
|
||||
|
||||
func _on_interactable_bowl_interacted() -> void:
|
||||
SceneManager.freeze_player(0)
|
||||
# ⼩男孩询问吕萍银元从哪⾥弄来的
|
||||
@ -90,7 +95,7 @@ func _on_interactable_bowl_interacted() -> void:
|
||||
kids.play("夜晚其余小孩杂耍到害怕过渡")
|
||||
var kid = $"../DeployLayer/举腿小孩"
|
||||
kid.play("夜晚举腿小孩杂耍到害怕过渡")
|
||||
$"Sfx鬼差出场".play()
|
||||
_ghost_appear_sfx()
|
||||
await Util.wait(1)
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s12_鬼差来了")
|
||||
var tween = create_tween()
|
||||
@ -132,6 +137,7 @@ func _setup_catching_game():
|
||||
|
||||
|
||||
func player_been_catched(transition := true) -> void:
|
||||
$"Bgm鬼差追逐".stop(1.5)
|
||||
$"Sfx鬼差擦肩而过".play()
|
||||
SceneManager.freeze_player(0)
|
||||
if ghost_move_tween:
|
||||
@ -152,7 +158,7 @@ func player_been_catched(transition := true) -> void:
|
||||
# reset player and ghost position
|
||||
ghost.global_position.x = ghost_start_x + 100.0
|
||||
SceneManager.get_player().global_position.x = player_start_x
|
||||
$"Sfx鬼差出场".play()
|
||||
_ghost_appear_sfx()
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c01, "c01_s12_鬼差来了")
|
||||
await DialogueManager.dialogue_ended
|
||||
SceneManager.release_player()
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=34 format=3 uid="uid://bol5hl68pbpgq"]
|
||||
[gd_scene load_steps=36 format=3 uid="uid://bol5hl68pbpgq"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_llw14"]
|
||||
[ext_resource type="Script" uid="uid://bh4h0e158t1oj" path="res://scene/ground/scene/c01/s12_书店外_诡异版.gd" id="2_krdvw"]
|
||||
@ -16,6 +16,7 @@
|
||||
[ext_resource type="PackedScene" uid="uid://ci34db7xool2n" path="res://scene/ground/script/c01/s01_书店外_自动枯萎的花朵.tscn" id="7_aq8vg"]
|
||||
[ext_resource type="AudioStream" uid="uid://c5rgfl6ub4chw" path="res://asset/audio/sfx/交互/序章/sfx_鬼差擦肩而过.wav" id="7_denrd"]
|
||||
[ext_resource type="PackedScene" uid="uid://h0s5ms7r7d8g" path="res://scene/effect/ghost.tscn" id="8_gk0gq"]
|
||||
[ext_resource type="AudioStream" uid="uid://csgc3241h5vin" path="res://asset/audio/sfx/bgm/序章/鬼差追击.MP3" id="9_denrd"]
|
||||
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="9_nqlku"]
|
||||
[ext_resource type="Script" uid="uid://dxq5c05ab7uyu" path="res://scene/ground/script/c01/s00_ghost_footstep.gd" id="10_1tspp"]
|
||||
[ext_resource type="PackedScene" uid="uid://cn1ypquvs07wx" path="res://scene/ground/script/c01/s12_飘动的寻人启事.tscn" id="11_pwu7i"]
|
||||
@ -50,6 +51,11 @@ _data = {
|
||||
&"intro": SubResource("Animation_48eje")
|
||||
}
|
||||
|
||||
[sub_resource type="AudioStreamSynchronized" id="AudioStreamSynchronized_mxf8g"]
|
||||
stream_count = 1
|
||||
stream_0/stream = ExtResource("4_mxf8g")
|
||||
stream_0/volume = 0.0
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_jw18h"]
|
||||
noise_type = 2
|
||||
fractal_type = 2
|
||||
@ -91,22 +97,54 @@ libraries = {
|
||||
&"": SubResource("AnimationLibrary_38lx7")
|
||||
}
|
||||
script = ExtResource("2_krdvw")
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"enabled_items": {
|
||||
"prop_银元": true
|
||||
},
|
||||
"player_x": 1500.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"AmbushSuccess": {
|
||||
"played": false
|
||||
},
|
||||
"Ambush举碗小孩": {
|
||||
"played": false
|
||||
},
|
||||
"Ambush玩家被抓": {
|
||||
"played": false
|
||||
},
|
||||
"AnimationPlayer": {
|
||||
"oneshot_animation_played": false
|
||||
},
|
||||
"Interactable碗": {
|
||||
"interacted_times": 0
|
||||
}
|
||||
})
|
||||
oneshot_animation = "intro"
|
||||
|
||||
[node name="BgmControl" type="Node" parent="Ground/AnimationPlayer" index="0"]
|
||||
script = ExtResource("3_p7n7n")
|
||||
bgm_title = "诡异环境音2"
|
||||
bgm_stream = ExtResource("4_mxf8g")
|
||||
bgm_stream = SubResource("AudioStreamSynchronized_mxf8g")
|
||||
metadata/_custom_type_script = "uid://bbg4vopj4apl6"
|
||||
|
||||
[node name="Sfx鬼差出场" type="AudioStreamPlayer2D" parent="Ground/AnimationPlayer" index="1"]
|
||||
[node name="Bgm鬼差追逐" type="Node" parent="Ground/AnimationPlayer" index="1"]
|
||||
script = ExtResource("3_p7n7n")
|
||||
mode = "stop"
|
||||
bgm_title = "Bgm鬼差追逐"
|
||||
bgm_stream = ExtResource("9_denrd")
|
||||
db = -15.0
|
||||
metadata/_custom_type_script = "uid://bbg4vopj4apl6"
|
||||
|
||||
[node name="Sfx鬼差出场" type="AudioStreamPlayer2D" parent="Ground/AnimationPlayer" index="2"]
|
||||
position = Vector2(1443, 41)
|
||||
stream = ExtResource("5_5qtdl")
|
||||
volume_db = 3.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("6_mxf8g")
|
||||
metadata/_custom_type_script = "uid://wapo47a1oddf"
|
||||
|
||||
[node name="Sfx鬼差擦肩而过" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
[node name="Sfx鬼差擦肩而过" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
stream = ExtResource("7_denrd")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("6_p7n7n")
|
||||
@ -185,6 +223,7 @@ position = Vector2(1911, 12)
|
||||
sprite_frames = ExtResource("14_7jjl5")
|
||||
animation = &"夜晚其余小孩杂耍"
|
||||
autoplay = "夜晚其余小孩杂耍"
|
||||
frame = 2
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "夜晚其余小孩杂耍到害怕过渡",
|
||||
&"animation_next": "夜晚其余小孩害怕",
|
||||
@ -197,6 +236,7 @@ position = Vector2(1822, 6)
|
||||
sprite_frames = ExtResource("14_7jjl5")
|
||||
animation = &"夜晚举腿小孩杂耍"
|
||||
autoplay = "夜晚举腿小孩杂耍"
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "夜晚举腿小孩杂耍到害怕过渡",
|
||||
"animation_next": "夜晚举腿小孩害怕",
|
||||
@ -209,6 +249,7 @@ position = Vector2(1792, 9)
|
||||
sprite_frames = ExtResource("13_lucm6")
|
||||
animation = &"杂戏团夜晚_小孩举碗呼吸"
|
||||
autoplay = "杂戏团夜晚_小孩举碗呼吸"
|
||||
frame = 2
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "杂戏团夜晚_小孩放下碗",
|
||||
"animation_next": "举碗小孩呼吸",
|
||||
@ -299,6 +340,13 @@ texture = ExtResource("17_nta2f")
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(41, 98)
|
||||
character = "小小蝶"
|
||||
player_movement_rect = Rect2(37, -158, 3013, 316)
|
||||
|
||||
[node name="CameraFocusMarker" parent="Ground" index="6"]
|
||||
limit_left = 0
|
||||
limit_top = -158
|
||||
limit_right = 3070
|
||||
limit_bottom = 158
|
||||
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(37, 150, 3050, 150)
|
||||
|
@ -34,6 +34,11 @@ script = ExtResource("3_bhi7l")
|
||||
autoplay_group = &"c02_楼道1"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="VibeSfx虫鸣" type="Node" parent="Ground/AnimationPlayer" index="1"]
|
||||
script = ExtResource("3_bhi7l")
|
||||
autoplay_group = &"夜晚虫鸣"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
texture = ExtResource("5_j2ctx")
|
||||
|
||||
|
@ -70,7 +70,10 @@ debug_global_data = Dictionary[String, Variant]({
|
||||
"c02_musicbox_xiaochan_taken": false,
|
||||
"c02_musicbox_xiaomao_taken": false,
|
||||
"c02_s02_mouse_push_shoe": false,
|
||||
"enabled_items": ["prop_火柴", "prop_木头人偶", "prop_银元"],
|
||||
"enabled_items": {
|
||||
"prop_火柴": true
|
||||
},
|
||||
"handnote_c02_musicbox_needPuppet": 0,
|
||||
"player_x": 530.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
@ -91,7 +94,7 @@ debug_ground_data = Dictionary[String, Variant]({
|
||||
},
|
||||
"AnimationPlayer": {
|
||||
"display_paper_man": false,
|
||||
"first_enter": false,
|
||||
"first_enter": true,
|
||||
"flyer_shaven": false,
|
||||
"oneshot_animation_played": false
|
||||
},
|
||||
@ -120,7 +123,7 @@ mode = "交互与效果音"
|
||||
|
||||
[node name="VibeSfx" type="Node" parent="Ground/AnimationPlayer" index="1"]
|
||||
script = ExtResource("5_36l5t")
|
||||
autoplay_group = &"c02_楼道1"
|
||||
autoplay_group = &"c02_楼道2"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
|
@ -135,6 +135,7 @@ func _on_gate_failed() -> void:
|
||||
|
||||
|
||||
func _on_gate_interacted() -> void:
|
||||
$"Sfx打开铁门后".play()
|
||||
gate.get_node("Wall/CollisionShape2D").disabled = true
|
||||
EventManager.set_stage_if_greater(&"handnote_c02_gate_chain", 2)
|
||||
EventManager.set_stage_if_greater(&"handnote_c02_map_1Right", 1)
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=80 format=3 uid="uid://djc2uaefhmu7"]
|
||||
[gd_scene load_steps=81 format=3 uid="uid://djc2uaefhmu7"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_0dylx"]
|
||||
[ext_resource type="Script" uid="uid://dsp5plrdkrsd7" path="res://scene/ground/scene/c02/s03_院子.gd" id="2_dt5aj"]
|
||||
@ -6,6 +6,7 @@
|
||||
[ext_resource type="SpriteFrames" uid="uid://3nas025c2c5u" path="res://asset/art/gif/c02_杂项/c02_杂项_frames.tres" id="4_gd6xp"]
|
||||
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_ygnci"]
|
||||
[ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="5_00b7a"]
|
||||
[ext_resource type="AudioStream" uid="uid://cm80s51o5xt0r" path="res://asset/audio/sfx/bgm/第一章/打开铁门后不循环背景音.MP3" id="5_qt2qg"]
|
||||
[ext_resource type="Texture2D" uid="uid://f8yjp5ggr8qw" path="res://asset/art/scene/c02/s03_公寓一楼院子/算卦布.png" id="6_1tart"]
|
||||
[ext_resource type="Texture2D" uid="uid://0uh6qaalhqju" path="res://asset/art/scene/c02/s11_一楼火灾/总背景/bg_院子1楼火灾.png" id="6_d7h4s"]
|
||||
[ext_resource type="AudioStream" uid="uid://bhaws2ungqaf5" path="res://asset/audio/sfx/交互/角色/sfx_哼歌.ogg" id="6_jhod7"]
|
||||
@ -287,7 +288,7 @@ data = {
|
||||
"oneshot_animation_played": false
|
||||
}
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"c02_ball_game_stage": 3,
|
||||
"c02_ball_game_stage": 1,
|
||||
"c02_burning": false,
|
||||
"c02_burning_end_stage": 1,
|
||||
"c02_counter_pushed_out": false,
|
||||
@ -296,7 +297,7 @@ debug_global_data = Dictionary[String, Variant]({
|
||||
"c02_madman_hitwall": false,
|
||||
"c02_madman_interacted": 0,
|
||||
"c02_open_gate_first_failed": false,
|
||||
"c02_ready_to_fire": true,
|
||||
"c02_ready_to_fire": false,
|
||||
"c02_show_grounded_coins": false,
|
||||
"c02_the_blind_room_unlocked": false,
|
||||
"c02_watched_the_well": false,
|
||||
@ -308,7 +309,7 @@ debug_global_data = Dictionary[String, Variant]({
|
||||
"handnote_c02_gate_chain": 1,
|
||||
"handnote_c02_map_1Right": 1,
|
||||
"handnote_c02_meat_knockDoor": 1,
|
||||
"player_x": 2000.0
|
||||
"player_x": 1200.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"Ambush保卫科旁边os": {
|
||||
@ -352,7 +353,7 @@ debug_ground_data = Dictionary[String, Variant]({
|
||||
"interacted_times": 0
|
||||
},
|
||||
"Interactable铁门": {
|
||||
"interacted_times": 1
|
||||
"interacted_times": 0
|
||||
},
|
||||
"Pickable小鞋子": {
|
||||
"picked": false
|
||||
@ -375,22 +376,29 @@ bus = &"game_sfx"
|
||||
script = ExtResource("4_ygnci")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx小鞋落地" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
[node name="Sfx打开铁门后" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
stream = ExtResource("5_qt2qg")
|
||||
volume_db = -20.0
|
||||
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="Sfx小蝉哼歌" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
[node name="Sfx小蝉哼歌" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
stream = ExtResource("6_jhod7")
|
||||
volume_db = 16.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_ygnci")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="VibeSfx" type="Node" parent="Ground/AnimationPlayer" index="3"]
|
||||
[node name="VibeSfx氛围" type="Node" parent="Ground/AnimationPlayer" index="4"]
|
||||
script = ExtResource("6_lq23y")
|
||||
autoplay_group = &"c02_楼道2"
|
||||
autoplay_group = &"氛围_不受欢迎的存在"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
@ -432,7 +440,7 @@ position = Vector2(953, 42)
|
||||
sprite_frames = ExtResource("11_o1qbs")
|
||||
animation = &"c00_头套小婵_run"
|
||||
autoplay = "c00_头套小婵_idle"
|
||||
frame = 3
|
||||
frame = 5
|
||||
move_configs = Array[Dictionary]([{
|
||||
"animation": "c00_头套小婵_run",
|
||||
"animation_next": "",
|
||||
@ -626,7 +634,6 @@ event = &"c02_madman_interacted"
|
||||
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
|
||||
|
||||
[node name="Sfx2D小蝉哼歌" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Event2D小蝉哼歌"]
|
||||
process_mode = 1
|
||||
position = Vector2(-2, -1)
|
||||
stream = ExtResource("6_jhod7")
|
||||
volume_db = 20.0
|
||||
@ -794,10 +801,9 @@ position = Vector2(-11, 1)
|
||||
sprite_frames = ExtResource("34_1tart")
|
||||
animation = &"霸凌1"
|
||||
autoplay = "霸凌1"
|
||||
frame = 4
|
||||
frame = 9
|
||||
|
||||
[node name="Sfx2D霸凌童谣" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/霸凌/f1"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("46_qqdxs")
|
||||
volume_db = -5.0
|
||||
attenuation = 2.0
|
||||
@ -1009,6 +1015,7 @@ position = Vector2(2229, 41)
|
||||
sprite_frames = ExtResource("34_1tart")
|
||||
animation = &"霸凌3-发抖"
|
||||
autoplay = "霸凌3-发抖"
|
||||
frame = 1
|
||||
|
||||
[node name="Pro小孩喊着火啦3" parent="Ground/DeployLayer/火灾" instance=ExtResource("33_ycojw")]
|
||||
z_index = 9
|
||||
@ -1067,13 +1074,12 @@ z_index = 5
|
||||
position = Vector2(17, -11)
|
||||
sprite_frames = ExtResource("39_rnk1v")
|
||||
animation = &"吕萍牵手动作"
|
||||
frame = 3
|
||||
frame = 5
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/DeployLayer/火灾/牵手跑"]
|
||||
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"
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=22 format=3 uid="uid://bivc5cdap370p"]
|
||||
[gd_scene load_steps=23 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_保卫科.gd" id="2_jyere"]
|
||||
@ -8,12 +8,13 @@
|
||||
[ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="5_g8amr"]
|
||||
[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"]
|
||||
[ext_resource type="Texture2D" uid="uid://cs14llkvr3fg8" path="res://asset/art/scene/c02/s04_保卫科/e_弹珠墙面涂鸦提示.png" id="6_gk1h4"]
|
||||
[ext_resource type="Texture2D" uid="uid://baffg10ne8hu8" path="res://asset/art/scene/c02/s04_保卫科/fg_前景.png" id="6_tio43"]
|
||||
[ext_resource type="PackedScene" uid="uid://b454ap241bshk" path="res://scene/ground/script/c02/折锡纸.tscn" id="7_fvlg0"]
|
||||
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="7_ypth3"]
|
||||
[ext_resource type="PackedScene" uid="uid://cdf2qe8l7323i" path="res://scene/ground/script/c02/老鼠精画像.tscn" id="8_cm3g6"]
|
||||
[ext_resource type="Texture2D" uid="uid://ch6uf4qi1i0h2" path="res://asset/art/scene/c02/s03_公寓一楼院子/光晕/光晕3.png" id="9_a43aq"]
|
||||
[ext_resource type="Texture2D" uid="uid://hkrd6dd2nxkv" path="res://asset/art/scene/c02/s04_保卫科/e_小钳子提示.png" id="9_k74x7"]
|
||||
[ext_resource type="PackedScene" uid="uid://xovlfee503a4" path="res://scene/ground/script/c02/小手讨东西.tscn" id="10_a43aq"]
|
||||
[ext_resource type="Texture2D" uid="uid://v6q6ao6fiqm1" path="res://asset/art/scene/c02/s04_保卫科/e_老鼠画像横板.png" id="11_ffvrp"]
|
||||
[ext_resource type="SpriteFrames" uid="uid://3nas025c2c5u" path="res://asset/art/gif/c02_杂项/c02_杂项_frames.tres" id="13_xy3nq"]
|
||||
@ -106,25 +107,29 @@ hook_method = "xiaochan_disappear"
|
||||
position = Vector2(275, 13)
|
||||
texture = ExtResource("6_gk1h4")
|
||||
|
||||
[node name="Closeup折锡纸" parent="Ground/DeployLayer" index="4" instance=ExtResource("6_66gue")]
|
||||
[node name="小钳子提示" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
position = Vector2(270, -3)
|
||||
texture = ExtResource("9_k74x7")
|
||||
|
||||
[node name="Closeup折锡纸" parent="Ground/DeployLayer" index="5" instance=ExtResource("6_66gue")]
|
||||
unique_name_in_owner = true
|
||||
position = Vector2(189, 15)
|
||||
packed_scene = ExtResource("7_fvlg0")
|
||||
first_interact_os_key = "c02_保卫科祭台os"
|
||||
|
||||
[node name="Closeup老鼠精" parent="Ground/DeployLayer" index="5" instance=ExtResource("6_66gue")]
|
||||
[node name="Closeup老鼠精" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_66gue")]
|
||||
light_mask = 5
|
||||
position = Vector2(207.5, -40.5)
|
||||
texture = ExtResource("11_ffvrp")
|
||||
packed_scene = ExtResource("8_cm3g6")
|
||||
|
||||
[node name="Closeup花名册" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_66gue")]
|
||||
[node name="Closeup花名册" parent="Ground/DeployLayer" index="7" instance=ExtResource("6_66gue")]
|
||||
unique_name_in_owner = true
|
||||
position = Vector2(351, 31)
|
||||
packed_scene = ExtResource("6_fvlg0")
|
||||
first_interact_os_key = "c02_保卫科花名册os"
|
||||
|
||||
[node name="煤油灯" type="Sprite2D" parent="Ground/DeployLayer" index="7"]
|
||||
[node name="煤油灯" type="Sprite2D" parent="Ground/DeployLayer" index="8"]
|
||||
position = Vector2(370, 39)
|
||||
|
||||
[node name="灯光" type="AnimatedSprite2D" parent="Ground/DeployLayer/煤油灯"]
|
||||
@ -141,16 +146,16 @@ energy = 2.0
|
||||
blend_mode = 2
|
||||
texture = ExtResource("9_a43aq")
|
||||
|
||||
[node name="小手讨东西" parent="Ground/DeployLayer" index="8" instance=ExtResource("10_a43aq")]
|
||||
[node name="小手讨东西" parent="Ground/DeployLayer" index="9" instance=ExtResource("10_a43aq")]
|
||||
position = Vector2(295, -6)
|
||||
|
||||
[node name="Local寻人启事" parent="Ground/DeployLayer" index="9" instance=ExtResource("19_k74x7")]
|
||||
[node name="Local寻人启事" parent="Ground/DeployLayer" index="10" instance=ExtResource("19_k74x7")]
|
||||
position = Vector2(116, -1)
|
||||
texture = ExtResource("20_g8amr")
|
||||
texture_cover = ExtResource("21_cq2m4")
|
||||
content_key = "c02_寻人启事_完整"
|
||||
|
||||
[node name="小蝉写字" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="10"]
|
||||
[node name="小蝉写字" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"]
|
||||
position = Vector2(351, 51)
|
||||
sprite_frames = ExtResource("20_47ju4")
|
||||
animation = &"c00_头套小婵_write"
|
||||
@ -175,6 +180,7 @@ texture = ExtResource("6_tio43")
|
||||
points = PackedVector2Array(66, 150, 495, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
energy = 0.9
|
||||
blend_mode = 1
|
||||
|
||||
|
@ -119,9 +119,12 @@ data = {
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"c02_madman_hitwall": true,
|
||||
"c02_madman_interacted": 0,
|
||||
"c02_meat_dropping": false,
|
||||
"c02_meat_dropping": true,
|
||||
"c02_meat_given": false,
|
||||
"enabled_items": ["prop_火柴", "prop_院长的信", "prop_银元"],
|
||||
"enabled_items": {
|
||||
"prop_奇怪的肉": true,
|
||||
"prop_粘鼠板": true
|
||||
},
|
||||
"handnote_c02_map_1Left": 0,
|
||||
"handnote_c02_meat_knockDoor": 0,
|
||||
"handnote_c02_meat_stopMouse": 0,
|
||||
@ -221,7 +224,7 @@ trigger_mode = "interact"
|
||||
hook_method = "wood_puppet"
|
||||
|
||||
[node name="Closeup拿人偶后记忆闪回" parent="Ground/DeployLayer" index="5" instance=ExtResource("10_2yvhw")]
|
||||
position = Vector2(320, 23)
|
||||
position = Vector2(-108, -168)
|
||||
packed_scene = ExtResource("10_7mq0m")
|
||||
quit_closeup_on_escape = false
|
||||
action_key = 3
|
||||
@ -355,6 +358,7 @@ position = Vector2(-180, 5)
|
||||
sprite_frames = ExtResource("7_mrltr")
|
||||
animation = &"小蝉背对转头"
|
||||
autoplay = "小蝉背对呼吸帧"
|
||||
frame = 4
|
||||
flip_h = true
|
||||
|
||||
[node name="Event2D小蝉哼歌" type="Node2D" parent="Ground/DeployLayer" index="18"]
|
||||
@ -364,7 +368,6 @@ event = &"c02_madman_interacted"
|
||||
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
|
||||
|
||||
[node name="Sfx2D小蝉哼歌" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Event2D小蝉哼歌"]
|
||||
process_mode = 1
|
||||
position = Vector2(-103, -11)
|
||||
stream = ExtResource("24_7mq0m")
|
||||
volume_db = 20.0
|
||||
@ -382,10 +385,17 @@ hook_method = "update_1l_map"
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(41, 98)
|
||||
player_movement_rect = Rect2(23, -158, 677, 316)
|
||||
|
||||
[node name="AudioListener2D" type="AudioListener2D" parent="Ground/MainPlayer" index="6"]
|
||||
current = true
|
||||
|
||||
[node name="CameraFocusMarker" parent="Ground" index="6"]
|
||||
limit_left = 0
|
||||
limit_top = -158
|
||||
limit_right = 716
|
||||
limit_bottom = 158
|
||||
|
||||
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
|
||||
position = Vector2(45, -9)
|
||||
scale = Vector2(1.1, 1.1)
|
||||
@ -395,6 +405,7 @@ texture = ExtResource("8_tueh3")
|
||||
points = PackedVector2Array(23, 150, 700, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
energy = 0.9
|
||||
blend_mode = 1
|
||||
|
||||
|
@ -111,10 +111,11 @@ func boys_ball_game() -> void:
|
||||
var stage = EventManager.get_stage(&"c02_ball_game_stage")
|
||||
if stage == 0:
|
||||
EventManager.set_stage(&"c02_ball_game_stage", 1)
|
||||
ArchiveManager.set_global_entry(&"c02_pliers_to_ball", true)
|
||||
SceneManager.lock_player()
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c02, "c02_s05_三男孩弹珠游戏1")
|
||||
await DialogueManager.dialogue_ended
|
||||
# 手里有弹珠就不说了
|
||||
if SceneManager.get_prop_hud().inventory.has_prop("prop_弹珠"):
|
||||
SceneManager.pop_os_with_str("c02_小手换回弹珠")
|
||||
SceneManager.unlock_player()
|
||||
elif stage == 1 or stage == 2:
|
||||
@ -190,10 +191,9 @@ func _on_exit_final_show(_arg):
|
||||
await get_tree().create_timer(3.0).timeout
|
||||
$"../DeployLayer/c02_final/瞎子/Sfx2D脚步声".play()
|
||||
await animation_finished
|
||||
c02_final_layer.queue_free()
|
||||
|
||||
_toggle_candles(true)
|
||||
await Util.wait(0.5)
|
||||
await Util.wait(1.0)
|
||||
c02_final_layer.queue_free()
|
||||
|
||||
# 小蝉上楼后开启第二章
|
||||
var xxdie = $"../DeployLayer/Pro小小蝶上楼" as AnimatedSprite2D
|
||||
|
@ -899,20 +899,19 @@ libraries = {
|
||||
script = ExtResource("2_4dg6u")
|
||||
debug_global_data = Dictionary[String, Variant]({
|
||||
"c02_2f_xchan_run_away": 0,
|
||||
"c02_ball_game_stage": 1,
|
||||
"c02_burning_end_stage": 1,
|
||||
"c02_ball_game_stage": 2,
|
||||
"c02_burning_end_stage": 2,
|
||||
"c02_madman_hitwall": false,
|
||||
"c02_mouse_follow_player": false,
|
||||
"c02_pliers_to_ball": false,
|
||||
"c02_s02_mouse_push_shoe": false,
|
||||
"c02_the_blind_room_unlocked": false,
|
||||
"c02_the_blind_room_unlocked": true,
|
||||
"enabled_items": {
|
||||
"prop_小鞋子1": true,
|
||||
"prop_火柴": true
|
||||
},
|
||||
"handnote_c02_map_2": 0,
|
||||
"handnote_c02_shoe_giveToMouce": 0,
|
||||
"player_x": 830.0
|
||||
"player_x": 50.0
|
||||
})
|
||||
debug_ground_data = Dictionary[String, Variant]({
|
||||
"Ambush三男孩": {
|
||||
@ -1072,7 +1071,6 @@ position = Vector2(953, 30)
|
||||
sprite_frames = ExtResource("13_6iuix")
|
||||
animation = &"小小小蝶动画(跑)"
|
||||
autoplay = "小小小蝶动画(呼吸)"
|
||||
frame = 1
|
||||
flip_h = true
|
||||
move_configs = Array[Dictionary]([{
|
||||
"animation": "小小小蝶动画(跑)",
|
||||
@ -1240,6 +1238,7 @@ autostart = false
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": &"胖子呼吸",
|
||||
&"animation_next": "胖子走路",
|
||||
"animation_wait_time": 0.0,
|
||||
&"intro_loop": 5
|
||||
}])
|
||||
move_configs = Array[Dictionary]([{
|
||||
@ -1267,10 +1266,13 @@ animation = &"小婵捂脸"
|
||||
autostart = false
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "小婵捂脸",
|
||||
&"animation_next": "小婵呼吸"
|
||||
&"animation_next": "小婵呼吸",
|
||||
"animation_wait_time": 0.0,
|
||||
"intro_loop": 1
|
||||
}, {
|
||||
"animation_intro": &"小婵呼吸",
|
||||
&"animation_next": "小婵走路",
|
||||
"animation_wait_time": 0.0,
|
||||
&"intro_loop": 7
|
||||
}])
|
||||
move_configs = Array[Dictionary]([{
|
||||
@ -1292,6 +1294,7 @@ autostart = false
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": &"方瞎子呼吸-右",
|
||||
&"animation_next": "方瞎子走路-左",
|
||||
"animation_wait_time": 0.0,
|
||||
&"intro_loop": 6
|
||||
}])
|
||||
move_configs = Array[Dictionary]([{
|
||||
|
@ -743,7 +743,7 @@ texture = ExtResource("16_7mvsg")
|
||||
position = Vector2(637.5, -19)
|
||||
sprite_frames = ExtResource("21_kpfk1")
|
||||
animation = &"剪影人物床_呼吸"
|
||||
frame = 2
|
||||
frame = 1
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": "剪影人物床_指天",
|
||||
&"animation_next": "剪影人物床_指天呼吸",
|
||||
|
@ -209,9 +209,9 @@ metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
light_mask = 5
|
||||
position = Vector2(0, -2)
|
||||
position = Vector2(0, -24)
|
||||
texture = ExtResource("4_ow08b")
|
||||
offset = Vector2(0, -115.5)
|
||||
offset = Vector2(0, -155)
|
||||
|
||||
[node name="portal_left" parent="Ground/DeployLayer" index="0"]
|
||||
position = Vector2(34, 8)
|
||||
@ -268,7 +268,7 @@ texture = ExtResource("11_amci2")
|
||||
packed_scene = ExtResource("7_d27sg")
|
||||
|
||||
[node name="小蜡烛系列" type="Node2D" parent="Ground/DeployLayer" index="6"]
|
||||
position = Vector2(0, 3)
|
||||
position = Vector2(0, 6)
|
||||
|
||||
[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
@ -386,7 +386,6 @@ texture = ExtResource("5_ow08b")
|
||||
points = PackedVector2Array(30, 151, 723, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
energy = 0.9
|
||||
blend_mode = 1
|
||||
|
||||
|
@ -225,9 +225,8 @@ func _on_interacted() -> void:
|
||||
ArchiveManager.set_global_entry(&"c02_little_hand_dropped_tin", true)
|
||||
await SceneManager.pop_os_with_str("c02_小手还能换什么")
|
||||
|
||||
# 是否允许老虎钳换弹珠
|
||||
var pliers_to_ball = ArchiveManager.get_global_value(&"c02_pliers_to_ball", false)
|
||||
if id == 0 and key == "prop_老虎钳" and pliers_to_ball:
|
||||
# 老虎钳 <-> 弹珠
|
||||
if id == 0 and key == "prop_老虎钳":
|
||||
interacted_success = true
|
||||
sfx_success.play()
|
||||
SceneManager.disable_prop_item("prop_老虎钳")
|
||||
@ -235,9 +234,7 @@ func _on_interacted() -> void:
|
||||
SceneManager.pop_debug_dialog_info("美术", "小手_老虎钳_hide + 小手_弹珠_show + 小手_弹珠_idle")
|
||||
await Util.wait(1.5)
|
||||
holding_prop = "prop_弹珠"
|
||||
# 换回弹珠后完全结束
|
||||
EventManager.set_stage_if_greater(&"handnote_c02_hand_exchange", 2)
|
||||
elif id == 0 and key == "prop_弹珠" and not pliers_to_ball:
|
||||
elif id == 0 and key == "prop_弹珠":
|
||||
interacted_success = true
|
||||
sfx_success.play()
|
||||
SceneManager.disable_prop_item("prop_弹珠")
|
||||
@ -245,7 +242,6 @@ func _on_interacted() -> void:
|
||||
SceneManager.pop_debug_dialog_info("美术", "小手_弹珠_hide + 小手_老虎钳_show + 小手_老虎钳_idle")
|
||||
await Util.wait(1.5)
|
||||
holding_prop = "prop_老虎钳"
|
||||
|
||||
if interacted_success:
|
||||
EventManager.prop_interacted(name, key, 1)
|
||||
else:
|
||||
|
@ -3,7 +3,7 @@
|
||||
extends RigidBody2D
|
||||
|
||||
signal hit_ball_touched
|
||||
signal hit_ball_finished
|
||||
signal hit_ball_finished(count: int)
|
||||
signal hit_boundary
|
||||
|
||||
@export_enum("1", "2", "3", "4", "5", "6", "7") var id := "1":
|
||||
@ -100,19 +100,29 @@ func _on_body_entered(node: Node):
|
||||
print("[debug] first hit node", node.get_path())
|
||||
shooted_instances[instance_id] = true
|
||||
shoot_count += 1
|
||||
# 从被打击到的 ball 上建立 tween
|
||||
tween = node.create_tween()
|
||||
# sfx 碰撞音效
|
||||
hit_ball_touched.emit()
|
||||
tween = create_tween()
|
||||
tween.tween_property(self, "modulate:a", 0.0, 1.5)
|
||||
# 新碰到会刷新 modulate:a -> 0 时间
|
||||
tween.tween_property(self, "modulate:a", 0.0, 1.5).set_ease(Tween.EASE_IN)
|
||||
tween.parallel().tween_property(node, "modulate:a", 0.0, 1.5)
|
||||
tween.tween_callback(hit_ball_finished.emit)
|
||||
# 和第一个碰撞的球消失时一起消失
|
||||
if shoot_count == 1:
|
||||
tween.tween_callback(_on_shoot_finished)
|
||||
tween.tween_callback(node.queue_free)
|
||||
tween.tween_callback(queue_free)
|
||||
print("[ball] shoot count: ", shoot_count)
|
||||
if shoot_count >= 3:
|
||||
#TODO 连续射中三个成就
|
||||
pass
|
||||
|
||||
|
||||
func _on_shoot_finished() -> void:
|
||||
# 计数+shoot_count & reload_hand_ball
|
||||
hit_ball_finished.emit(shoot_count)
|
||||
queue_free()
|
||||
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if Engine.is_editor_hint():
|
||||
return
|
||||
|
@ -52,6 +52,8 @@ func intro():
|
||||
|
||||
func intro_finished():
|
||||
SceneManager.disable_prop_item("prop_弹珠")
|
||||
# 老虎钳 - 弹珠交换功能结束
|
||||
EventManager.set_stage_if_greater(&"handnote_c02_hand_exchange", 2)
|
||||
# 0:默认 1:寻找弹珠(老虎钳可以换弹珠) 2:给出弹珠 3:游戏结束(小猫纸片) 4:游戏结束(小猫离开)
|
||||
# 放入弹珠,开始游戏
|
||||
EventManager.set_stage(&"c02_ball_game_stage", 2)
|
||||
@ -198,9 +200,10 @@ func _on_hit_ball():
|
||||
sfx_shoot.stop()
|
||||
|
||||
|
||||
func _on_hit_ball_finished():
|
||||
func _on_hit_ball_finished(count: int):
|
||||
reload_hand_ball()
|
||||
hit_count += 1
|
||||
hit_count += count
|
||||
print("current round: ", round_id, " hit count: ", hit_count)
|
||||
if round_id == 0:
|
||||
round_ready = false
|
||||
_success_dialogue()
|
||||
|
@ -30,11 +30,13 @@ func _ready() -> void:
|
||||
content_rect.modulate.a = 0.0
|
||||
content_rect.visible = true
|
||||
|
||||
|
||||
func _enter_tree() -> void:
|
||||
SceneManager.pop_center_notification("input_拼凑信件")
|
||||
await Util.wait(4.0)
|
||||
SceneManager.pop_center_notification("ui_center_notify_press_q_to_exit")
|
||||
|
||||
|
||||
func _setup() -> void:
|
||||
# 保存 whole 中的 4 个 part 的位置,然后从 whole 中移除,添加到 container 中
|
||||
positions.clear()
|
||||
@ -141,6 +143,9 @@ func _post_success():
|
||||
$"Sfx展开信".play()
|
||||
var inspector = SceneManager.get_inspector()
|
||||
inspector.pop_standard_inspection(texture, null, tr("prop_院长的信_说明"), false, true)
|
||||
inspector.quit_and_hidden.connect(
|
||||
SceneManager.pop_center_notification.bind("ui_center_notify_check_bag"), CONNECT_ONE_SHOT
|
||||
)
|
||||
SceneManager.enable_important_item("prop_院长的信")
|
||||
whole.visible = false
|
||||
# 1s 后退出
|
||||
|
@ -28,9 +28,9 @@ var enabled_items := [] as Array[String]
|
||||
func checkout(character: String):
|
||||
# @export_enum("吕萍", "吕萍爬行", "吕萍带小猫", "吕萍推柜子", "小小蝶", "盒子猫", "小小小蝶") var character := "吕萍":
|
||||
if character.begins_with("小小小蝶"):
|
||||
enabled_items = xxdie_enabled_items
|
||||
elif character.begins_with("小小蝶"):
|
||||
enabled_items = xxxdie_enabled_items
|
||||
elif character.begins_with("小小蝶"):
|
||||
enabled_items = xxdie_enabled_items
|
||||
elif character.begins_with("吕萍"):
|
||||
enabled_items = xdie_enabled_items
|
||||
else:
|
||||
|