demo0.1.2.1 按反馈需求整改
This commit is contained in:
parent
4cb89de3d7
commit
ee0eae7452
Binary file not shown.
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 5.6 KiB |
Binary file not shown.
Before Width: | Height: | Size: 5.6 KiB |
BIN
asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字与柜子痕迹.png
Normal file
BIN
asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字与柜子痕迹.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 KiB |
@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://diuh52qo2o6pa"
|
||||
path="res://.godot/imported/f_院子内墙上文字.png-107caa7c643223d1c6850711ee51240a.ctex"
|
||||
path="res://.godot/imported/f_院子内墙上文字与柜子痕迹.png-0cef3994ff5def82c7145639956c0415.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png"
|
||||
dest_files=["res://.godot/imported/f_院子内墙上文字.png-107caa7c643223d1c6850711ee51240a.ctex"]
|
||||
source_file="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字与柜子痕迹.png"
|
||||
dest_files=["res://.godot/imported/f_院子内墙上文字与柜子痕迹.png-0cef3994ff5def82c7145639956c0415.ctex"]
|
||||
|
||||
[params]
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 20 KiB |
@ -20,6 +20,8 @@ setting_记忆,记忆(G),,,,,
|
||||
setting_全屏游戏,全屏游戏,,,,,Full Screen
|
||||
setting_窗口置顶,窗口置顶,,,,,Top Window
|
||||
ux_panel_笔记,线索,,,,,
|
||||
c02_小手其他交易,...还有什么东西能跟它交换呢?,,,,,
|
||||
这是什么鬼东西,它是在讨要什么 [ID:],这是什么鬼东西,它是在讨要什么 [ID:],,,,,
|
||||
index_新游戏,新游戏,,,,,New Game
|
||||
index_继续游戏,继续游戏,,,,,Resume
|
||||
index_退出游戏,退出游戏,,,,,Exit
|
||||
@ -87,7 +89,7 @@ prop_小猫玩具的脑袋_说明,某个玩具的部件,有些眼熟,,,,,
|
||||
prop_无头小猫玩具,无头小猫玩具,,,[#texture=c02/新小猫身体.png][#inspect=c02/新小猫身体_特写.png],,
|
||||
prop_无头小猫玩具_说明,没有脑袋的小猫玩偶,针脚歪歪扭扭,不甚熟练,,,,,
|
||||
prop_小猫玩具完整,小猫玩具,,,[#texture=c02/新小猫全身.png],,
|
||||
prop_小猫玩具完整_说明,这玩具看久了还蛮可爱的,,,,,
|
||||
prop_小猫玩具完整_说明,这个玩具看久了有些眼熟,,,,,
|
||||
prop_撕下的照片上,撕下的照片(上),,,[#texture=c02/照片_上.png],,
|
||||
prop_撕下的照片上_说明,女儿生辰纪念 于 民国元年,,,,,
|
||||
prop_老虎钳,老虎钳,,,[#texture=c02/老虎钳物品.png][#inspect=c02/老虎钳.png],,
|
||||
@ -151,7 +153,7 @@ c02_海报_戏法班,朱连魁全班戏法——「各有幻女...演技新奇
|
||||
c02_芦昌路26,芦昌路26弄3号,我父母真的住在这里吗...,,,,,
|
||||
c02_s01_下黄包车,院长在信里提到的就是这里,,,,,
|
||||
c02_s01_寻人启事,寻人启事...,,,,,
|
||||
c02_冷飕飕的,冷飕飕的...,,,,,
|
||||
c02_冷飕飕的,船明天就开了,今晚来这或许是我最后的机会。,,,,,
|
||||
c02_太暗了,太暗了,找找能照明的东西吧。,,,,,
|
||||
c02_陈旧的煤油灯,上了年头的煤油灯,似乎很久没用过了。,,,,,
|
||||
c02_使用煤油灯,呼,那股阴冷的感觉也消失了。,,,,,
|
||||
@ -165,13 +167,14 @@ c02_s03_干掉的血迹,血迹看上去干了很久,血脚印有大有小,
|
||||
c02_院子_算命摊位,算命的摊位?,,,,,
|
||||
c02_院子_要下雨,好像要下雨了?,,,,,
|
||||
c02_s03_掉鞋子,怎么天上掉了个小鞋子下来?,,,,,
|
||||
c02_s03_铁门,锁住了,,,,,
|
||||
c02_s03_铁门,被铁链锁住了,,,,,
|
||||
c02_保卫科花名册os,芦昌公寓居民登记簿,黄国栋记。,,,,,
|
||||
c02_保卫科花名册首次互动结束,3012?上面有我的名字,看来确实是这里...,,,,,
|
||||
c02_保卫科祭台os,祭台是专门供奉这只大老鼠的?,,,,,
|
||||
c02_保卫科老鼠精,鼠歌 <br><br>天地小如喉,<br>红轮自吞吐。<br>多少世间人,<br>都被红轮误。,,,,,
|
||||
c02_小手其他交易,...还有什么东西能跟它交换呢?,,,,,
|
||||
c02_小手还能换什么,...还有什么东西能跟它交换呢?,,,,,
|
||||
c02_小手出现摔倒,?!,,,,,
|
||||
这是什么鬼东西,它是在讨要什么 [ID:],这是什么鬼东西,它是在讨要什么 [ID:],,,,,
|
||||
c02_小手是什么鬼,这是什么鬼东西,它是在讨要什么,,,,,
|
||||
c02_小手再次出现,又来一个!,,,,,
|
||||
c02_一楼楼道被挡住,被挡住了,,,,,
|
||||
c02_一楼戏台,盖着布的木头架子...用来做什么的呢,,,,,
|
||||
@ -187,6 +190,8 @@ c02_二楼楼梯杂物堆,堆满了杂物,看样子没办法从这里上去了
|
||||
c02_二楼水盆,盆里的水很清澈,看上去像是刚盛的。,,,,,
|
||||
c02_二楼老鼠洞,到处都是老鼠洞,怕不是整栋楼都被老鼠打通了。,,,,,
|
||||
c02_二楼血脚印,又是这种小小尖尖的血脚印...,,,,,
|
||||
c02_老鼠叼鞋引开疯子,那女孩为什么要我引开这个疯男人?,,,,,
|
||||
c02_小手换回弹珠,我要去找洞里的小手把弹珠拿回来。,,,,,
|
||||
c02_离开红色演出,刚才那些...到底是怎么回事?,,,,,
|
||||
c02_瞎子卧室_八卦图,「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」<br>咦,这口诀是谁教我的来着...,,,,,
|
||||
c02_瞎子卧室_十字架,院长房间里也有一个类似的十字架。,,,,,
|
||||
|
|
@ -85,7 +85,7 @@
|
||||
无头小猫玩具 [#texture=c02/新小猫身体.png] [#inspect=c02/新小猫身体_特写.png] [ID:prop_无头小猫玩具]
|
||||
没有脑袋的小猫玩偶,针脚歪歪扭扭,不甚熟练 [ID:prop_无头小猫玩具_说明]
|
||||
小猫玩具 [#texture=c02/新小猫全身.png] [ID:prop_小猫玩具完整]
|
||||
这玩具看久了还蛮可爱的[ID:prop_小猫玩具完整_说明]
|
||||
这个玩具看久了有些眼熟[ID:prop_小猫玩具完整_说明]
|
||||
撕下的照片(上) [#texture=c02/照片_上.png] [ID:prop_撕下的照片上]
|
||||
女儿生辰纪念 于 民国元年 [ID:prop_撕下的照片上_说明]
|
||||
老虎钳 [#texture=c02/老虎钳物品.png][#inspect=c02/老虎钳.png] [ID:prop_老虎钳]
|
||||
@ -180,7 +180,7 @@
|
||||
院长在信里提到的就是这里 [ID:c02_s01_下黄包车]
|
||||
寻人启事... [ID:c02_s01_寻人启事]
|
||||
# c02-s02 走道
|
||||
冷飕飕的... [ID:c02_冷飕飕的]
|
||||
船明天就开了,今晚来这或许是我最后的机会。 [ID:c02_冷飕飕的]
|
||||
太暗了,找找能照明的东西吧。 [ID:c02_太暗了]
|
||||
上了年头的煤油灯,似乎很久没用过了。 [ID:c02_陈旧的煤油灯]
|
||||
呼,那股阴冷的感觉也消失了。 [ID:c02_使用煤油灯]
|
||||
@ -191,19 +191,23 @@
|
||||
自制的八音盒,这么用心的小玩意,怎么会被人扔在这里呢? [ID:c02_s02_八音盒]
|
||||
别出心裁的小机关,缺了点东西,暂时还不能用 [ID:c02_s02_八音盒缺人偶]
|
||||
# c02 院子
|
||||
好像要下雨了? [ID:c02_院子_保卫科旁]
|
||||
血迹看上去干了很久,血脚印有大有小,咦,还有个特别小的... [ID:c02_s03_干掉的血迹]
|
||||
算命的摊位? [ID:c02_院子_算命摊位]
|
||||
好像要下雨了? [ID:c02_院子_要下雨]
|
||||
怎么天上掉了个小鞋子下来? [ID:c02_s03_掉鞋子]
|
||||
锁住了 [ID:c02_s03_铁门]
|
||||
被铁链锁住了 [ID:c02_s03_铁门]
|
||||
三快三慢?是和那个肉铺老板交流的暗号吗? [ID:c02_偷听李癞对话后]
|
||||
这里之前放着的东西好像被人挪走了? [ID:c02_柜子可放置区域]
|
||||
# c02 保卫科
|
||||
芦昌公寓居民登记簿,黄国栋记。 [ID:c02_保卫科花名册os]
|
||||
3012?上面有我的名字,看来确实是这里... [ID:c02_保卫科花名册首次互动结束]
|
||||
祭台是专门供奉这只大老鼠的? [ID:c02_保卫科祭台os]
|
||||
鼠歌 <br><br>天地小如喉,<br>红轮自吞吐。<br>多少世间人,<br>都被红轮误。 [ID:c02_保卫科老鼠精]
|
||||
# c02 小手
|
||||
...还有什么东西能跟它交换呢? [ID:]
|
||||
...还有什么东西能跟它交换呢? [ID:c02_小手还能换什么]
|
||||
?! [ID:c02_小手出现摔倒]
|
||||
这是什么鬼东西,它是在讨要什么 [ID:]
|
||||
这是什么鬼东西,它是在讨要什么 [ID:c02_小手是什么鬼]
|
||||
又来一个! [ID:c02_小手再次出现]
|
||||
# c02 内侧楼道
|
||||
被挡住了 [ID:c02_一楼楼道被挡住]
|
||||
@ -223,6 +227,8 @@
|
||||
盆里的水很清澈,看上去像是刚盛的。 [ID:c02_二楼水盆]
|
||||
到处都是老鼠洞,怕不是整栋楼都被老鼠打通了。 [ID:c02_二楼老鼠洞]
|
||||
又是这种小小尖尖的血脚印... [ID:c02_二楼血脚印]
|
||||
那女孩为什么要我引开这个疯男人?[ID:c02_老鼠叼鞋引开疯子]
|
||||
我要去找洞里的小手把弹珠拿回来。 [ID:c02_小手换回弹珠]
|
||||
# c02 瞎子卧室
|
||||
刚才那些...到底是怎么回事? [ID:c02_离开红色演出]
|
||||
「乾三连,坤六断;震仰盂,艮覆碗;离中虚,坎中满;兑上缺,巽下断」<br>咦,这口诀是谁教我的来着... [ID:c02_瞎子卧室_八卦图]
|
||||
|
@ -24,12 +24,13 @@
|
||||
???: 这是我家,我的东西,我的宝贝,听到没有?!别吵了...都出去! [#anonymous] [ID:c02_2疯子_3]
|
||||
=> END
|
||||
|
||||
~ c02_s11_井边疯子对话
|
||||
~ c02_看井对话
|
||||
???: 囡囡看,月亮掉进水里喽! [ID:c02_3疯子_1]
|
||||
???: 不对、不对,连月亮也骗我! [ID:c02_3疯子_2]
|
||||
???: 月牙儿,不吉利,圆圆的,一块也不能缺... [ID:c02_3疯子_3]
|
||||
#=> END
|
||||
#~ c02_疯子对话圆月亮
|
||||
=> END
|
||||
|
||||
~ c02_井边疯子对话
|
||||
???: 你看见没有?这月亮够不够圆? [ID:c02_疯子对话圆月亮1]
|
||||
???: 杆子细又高、灯火照一照、庙里影子绕、大家哈哈笑... [ID:c02_疯子对话圆月亮2]
|
||||
???: 扁担长,板凳宽,板凳没有扁担长,扁担没有板凳宽...一担挑啊,一担挑! [ID:c02_疯子对话圆月亮3]
|
||||
|
@ -1,7 +1,8 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform float vignette_intensity : hint_range(0.0, 4.0) = 0.4;
|
||||
uniform vec4 vignette_rgb : source_color = vec4(0.247, 0.149, 0.192, 1.0);
|
||||
uniform float vignette_ratio : hint_range(0.0, 1.0) = 0.4;
|
||||
uniform float vignette_intensity : hint_range(0.0, 4.0) = 0.3;
|
||||
uniform vec3 vignette_rgb : source_color = vec3(0.753, 0.0, 0.0);
|
||||
uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap;
|
||||
|
||||
float vignette(vec2 uv){
|
||||
@ -12,8 +13,7 @@ float vignette(vec2 uv){
|
||||
|
||||
void fragment(){
|
||||
vec4 color = texture(SCREEN_TEXTURE, SCREEN_UV);
|
||||
vec4 text = texture(TEXTURE, UV);
|
||||
text.rgba *= (vignette_rgb.rgba);
|
||||
text.rgba *= (1.0 - vignette(UV));
|
||||
COLOR = vec4((text.rgb)*color.rgb, text.a);
|
||||
float a = 1.0 - vignette(UV);
|
||||
vec3 rgb = vignette_ratio * vignette_rgb + (1.0 - vignette_ratio) * color.rgb;
|
||||
COLOR = vec4(rgb, a);
|
||||
}
|
@ -10,17 +10,14 @@ class_name AssembledArchive extends Resource
|
||||
if val and val.length() != 7:
|
||||
printerr("[AssembledArchive] current_scene is not valid: " + val)
|
||||
return
|
||||
current_chapter = int(val.substr(1, 2))
|
||||
current_section = int(val.substr(5))
|
||||
# 尝试后台预先加载该场景
|
||||
if GroundLoader.GROUND_SCENE_PATH_DICT.has(val):
|
||||
var path = GroundLoader.GROUND_SCENE_PATH_DICT[val]
|
||||
if GlobalConfig.DEBUG:
|
||||
print("[AssembledArchive] preload scene: " + path)
|
||||
ResourceLoader.load_threaded_request(path, "PackedScene")
|
||||
# current_chapter and current_section are derived from current_scene
|
||||
# 0:未开始游戏;1:序章;2-5:一~四章;6:结尾
|
||||
@export var current_chapter := 0
|
||||
@export var current_section := 0
|
||||
# player's info
|
||||
# 只有在 >=0 的情况下才会生效
|
||||
@export var player_global_position_x := -100.0
|
||||
@ -71,3 +68,13 @@ func set_global_entry(property: StringName, value) -> void:
|
||||
|
||||
func get_global_value(property: StringName) -> Variant:
|
||||
return global_data_dict.get(property)
|
||||
|
||||
func set_chapter_if_greater(c : int) -> void:
|
||||
# 1:序章;2-5:一~四章;6:结尾
|
||||
if c < 1 or c > 6:
|
||||
printerr("[AssembledArchive] set_chapter: invalid chapter value: " + str(c))
|
||||
return
|
||||
if current_chapter >= c:
|
||||
return
|
||||
print("[AssembledArchive] set_chapter_if_greater: " + str(c))
|
||||
current_chapter = c
|
@ -96,8 +96,6 @@ func get_concise_timemark() -> String:
|
||||
+ str(ArchiveManager.current_archive_id)
|
||||
+ "_c"
|
||||
+ str(archive.current_chapter)
|
||||
+ "_s"
|
||||
+ str(archive.current_section)
|
||||
+ " "
|
||||
+ str(hour)
|
||||
+ ":"
|
||||
|
@ -21,32 +21,33 @@ var ground: Ground2D
|
||||
|
||||
# 场景名字映射到路径
|
||||
static var GROUND_SCENE_PATH_DICT = {
|
||||
"c01_s05": "res://scene/ground/scene/c01/s05_院长房间.tscn",
|
||||
"c01_s06": "res://scene/ground/scene/c01/s06_孤儿院长廊围墙.tscn",
|
||||
"c01_s07": "res://scene/ground/scene/c01/s07_书店外.tscn",
|
||||
"c01_s08": "res://scene/ground/scene/c01/s08_书店.tscn",
|
||||
"c01_s09": "res://scene/ground/scene/c01/s09_公寓楼外.tscn",
|
||||
"c01_s10": "res://scene/ground/scene/c01/s10_公寓楼道.tscn",
|
||||
"c01_s11": "res://scene/ground/scene/c01/s11_黄包车演出.tscn",
|
||||
"c01_s12": "res://scene/ground/scene/c01/s12_书店外_诡异版.tscn",
|
||||
"c02_s01": "res://scene/ground/scene/c02/s01_公寓门口.tscn",
|
||||
"c02_s02": "res://scene/ground/scene/c02/s02_过道.tscn",
|
||||
"c02_s03": "res://scene/ground/scene/c02/s03_院子.tscn",
|
||||
"c02_s04": "res://scene/ground/scene/c02/s04_保卫科.tscn",
|
||||
"c02_s05": "res://scene/ground/scene/c02/s05_一楼内侧楼道.tscn",
|
||||
"c02_s06": "res://scene/ground/scene/c02/s06_二楼.tscn",
|
||||
"c02_s07": "res://scene/ground/scene/c02/s07_二楼内侧楼道.tscn",
|
||||
"c02_s08": "res://scene/ground/scene/c02/s08_瞎子卧室.tscn",
|
||||
"c02_s09": "res://scene/ground/scene/c02/s09_裂缝.tscn",
|
||||
"c02_s10": "res://scene/ground/scene/c02/s10_空房间.tscn",
|
||||
"c02_s11": "res://scene/ground/scene/c02/s11_一楼火灾.tscn", # 注:该场景合并在了 c02_s03 院子中
|
||||
"c02_s12": "res://scene/ground/scene/c02/s12_盒子猫.tscn",
|
||||
"c02_s13": "res://scene/ground/scene/c02/s13_盒子猫二楼.tscn",
|
||||
"c02_s14": "res://scene/ground/scene/c02/s14_盒子猫二楼内侧.tscn",
|
||||
"c02_s15": "res://scene/ground/scene/c02/s15_盒子猫一楼内侧.tscn",
|
||||
"c02_s16": "res://scene/ground/scene/c02/s16_盒子猫三楼内侧.tscn",
|
||||
"c02_s17": "res://scene/ground/scene/c02/s17_盒子猫三楼.tscn",
|
||||
"c02_s18": "res://scene/ground/scene/c02/s18_盒子猫一楼.tscn",
|
||||
"c01_s05": "uid://dlx5xxbg53rb8",
|
||||
"c01_s06": "uid://bx16c8nn32f40",
|
||||
"c01_s07": "uid://ds2iyfndwamiy",
|
||||
"c01_s08": "uid://cwu4dhayra8pg",
|
||||
"c01_s09": "uid://c777lv8mjojcw",
|
||||
"c01_s10": "uid://be57l2o3vxxtm",
|
||||
"c01_s11": "uid://coiumaaenimbc",
|
||||
"c01_s12": "uid://bol5hl68pbpgq",
|
||||
"c02_s01": "uid://bbs7yy5aofw1v",
|
||||
"c02_s02": "uid://brck77w81fhvc",
|
||||
"c02_s03": "uid://djc2uaefhmu7",
|
||||
"c02_s04": "uid://bivc5cdap370p",
|
||||
"c02_s05": "uid://cp8d3ag5nbjq0",
|
||||
"c02_s06": "uid://cootarwb44vvh",
|
||||
"c02_s07": "uid://t4xjt774ngwh",
|
||||
"c02_s08": "uid://ce2vyyg2reg52",
|
||||
"c02_s09": "uid://ryups1dnwdto",
|
||||
"c02_s10": "uid://dny21yhtuteap",
|
||||
"c02_s11": "uid://dq41rvwl5hyrk", # 注:该场景合并在了 c02_s03 院子中
|
||||
"c02_s12": "uid://da4cuf2i3nwpj",
|
||||
"c02_s13": "uid://bvjutch6jex0v",
|
||||
"c02_s14": "uid://d0p4x5st2r315",
|
||||
"c02_s15": "uid://b21p53g42j2nt",
|
||||
"c02_s16": "uid://22hc3oe8t0id",
|
||||
"c02_s17": "uid://cbr6gbgrl2wb1",
|
||||
"c02_s18": "uid://d27gv3pbkn4b8",
|
||||
"c03_s01": "uid://dlrbhfvnd3cs0", # 瞎子理发店
|
||||
}
|
||||
|
||||
|
||||
|
@ -30,6 +30,7 @@ func play_intro_dialogue():
|
||||
|
||||
|
||||
func _on_ground_ready() -> void:
|
||||
ArchiveManager.archive.set_chapter_if_greater(1)
|
||||
ambush = $"../DeployLayer/ambush鸡毛掸子"
|
||||
frame = $"../DeployLayer/画框"
|
||||
paper = $"../DeployLayer/oneshot纸片"
|
||||
|
@ -754,7 +754,6 @@ unique_name_in_owner = true
|
||||
position = Vector2(270, 23.5)
|
||||
texture = ExtResource("12_jtglg")
|
||||
trigger_mode = "interact"
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_animation = "使用鸡毛掸子"
|
||||
hook_method = "lock_on_use_stick"
|
||||
|
||||
|
@ -230,7 +230,7 @@ hook_dialogue_title = "c01_s06_走廊前对话"
|
||||
position = Vector2(308, 43)
|
||||
one_shot = false
|
||||
cooldown_time = 3.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
lock_player_on_playing_dialogue = false
|
||||
hook_animation = "门口_观望"
|
||||
|
||||
[node name="踢球男孩" parent="Ground/DeployLayer" index="6" instance=ExtResource("5_erliv")]
|
||||
@ -425,7 +425,6 @@ move_configs = Array[Dictionary]([{
|
||||
position = Vector2(1, 65)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "obstacles_ambush1_triggered"
|
||||
|
||||
[node name="Area2D" parent="Ground/DeployLayer/【站立小孩-1】/桌椅ambush1" index="1"]
|
||||
@ -491,7 +490,6 @@ position = Vector2(78, 43)
|
||||
position = Vector2(1, 65)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "obstacles_ambush2_triggered"
|
||||
|
||||
[node name="Area2D" parent="Ground/DeployLayer/【站立小孩-2】/桌椅ambush2" index="1"]
|
||||
@ -533,7 +531,6 @@ bus = &"game_sfx"
|
||||
position = Vector2(1809, 56)
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "game_intro"
|
||||
|
||||
[node name="【胖小孩背着残疾小孩】" parent="Ground/DeployLayer" index="18" instance=ExtResource("8_ouldg")]
|
||||
@ -574,7 +571,6 @@ move_configs = Array[Dictionary]([{
|
||||
position = Vector2(1, 65)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "obstacles_ambush3_triggered"
|
||||
|
||||
[node name="Area2D" parent="Ground/DeployLayer/【胖小孩背着残疾小孩】/桌椅ambush3" index="1"]
|
||||
@ -637,7 +633,6 @@ hook_method = "talk3"
|
||||
position = Vector2(4546, 45)
|
||||
one_shot = false
|
||||
cooldown_time = 0.1
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "game_succeed"
|
||||
|
||||
[node name="Fog" parent="Ground/DeployLayer/猫鼠游戏胜利ambush" instance=ExtResource("14_d5def")]
|
||||
|
@ -23,6 +23,7 @@ var ambush_seller: Ambush2D
|
||||
var bookstore_portal: Portal2D
|
||||
|
||||
func _on_ground_ready() -> void:
|
||||
ArchiveManager.archive.set_chapter_if_greater(2)
|
||||
luren = $"../DeployLayer/陆仁舞刀" as ProAnimatedSprite2D
|
||||
fog = $"../DeployLayer/portal_1/Fog" as Fog2D
|
||||
if data.fog_disappeared:
|
||||
|
@ -131,7 +131,6 @@ texture = ExtResource("5_tnrke")
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "play_shelf_game"
|
||||
|
||||
[node name="Interactable信件书桌" parent="Ground/DeployLayer" index="3" instance=ExtResource("7_fue0t")]
|
||||
@ -175,7 +174,6 @@ position = Vector2(537, 21)
|
||||
enabled = false
|
||||
trigger_mode = "interact"
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "pay_off_wage"
|
||||
|
||||
[node name="老板" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="8"]
|
||||
|
@ -148,7 +148,6 @@ position = Vector2(-119, 13)
|
||||
position = Vector2(96, 20)
|
||||
one_shot = false
|
||||
cooldown_time = 0.1
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "player_been_passed"
|
||||
|
||||
[node name="脚步声2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Ghost"]
|
||||
|
@ -216,42 +216,36 @@ position = Vector2(1365, 4)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "pop_title_1"
|
||||
|
||||
[node name="ambush_title2" parent="Ground/DeployLayer" index="5" instance=ExtResource("6_3k8jj")]
|
||||
position = Vector2(2870, -10)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "pop_title_2"
|
||||
|
||||
[node name="ambush_title3" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_3k8jj")]
|
||||
position = Vector2(6341, 3)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "pop_title_3"
|
||||
|
||||
[node name="ambush_dialog2" parent="Ground/DeployLayer" index="7" instance=ExtResource("6_3k8jj")]
|
||||
position = Vector2(866, 5)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "dialog2"
|
||||
|
||||
[node name="ambush_dialog3" parent="Ground/DeployLayer" index="8" instance=ExtResource("6_3k8jj")]
|
||||
position = Vector2(3448, -8)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "dialog3"
|
||||
|
||||
[node name="ambush_dialog4" parent="Ground/DeployLayer" index="9" instance=ExtResource("6_3k8jj")]
|
||||
position = Vector2(5305, -2)
|
||||
trigger_mode = "area_enter"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "dialog4"
|
||||
|
||||
[node name="路灯序列1" type="Node2D" parent="Ground/AmbientLayer" index="0"]
|
||||
|
@ -159,7 +159,6 @@ position = Vector2(1127, 28)
|
||||
enabled = false
|
||||
one_shot = false
|
||||
cooldown_time = 0.1
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "player_been_catched"
|
||||
|
||||
[node name="脚步声2D" type="AudioStreamPlayer2D" parent="Ground/DeployLayer/Ghost"]
|
||||
@ -227,7 +226,6 @@ action_configs = Array[Dictionary]([{
|
||||
[node name="Ambush举碗小孩" parent="Ground/DeployLayer/举碗小孩" instance=ExtResource("9_nqlku")]
|
||||
position = Vector2(0, 53)
|
||||
trigger_mode = "interact"
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "ambush_begger_interacted"
|
||||
|
||||
[node name="Interactable碗" parent="Ground/DeployLayer/举碗小孩" instance=ExtResource("5_6jrnc")]
|
||||
@ -249,7 +247,6 @@ position = Vector2(0, 92)
|
||||
enabled = false
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "player_run_away"
|
||||
|
||||
[node name="Light" parent="Ground/AmbientLayer" index="0" instance=ExtResource("5_kywnm")]
|
||||
|
@ -37,13 +37,11 @@ texture = ExtResource("5_j2ctx")
|
||||
[node name="portal_left" parent="Ground/DeployLayer" index="0"]
|
||||
position = Vector2(78, 27)
|
||||
immediately = true
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(368, 4)
|
||||
target_scene = "c02_s02"
|
||||
target_portal = "left"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="Note门口" parent="Ground/DeployLayer" index="2" instance=ExtResource("6_bhi7l")]
|
||||
position = Vector2(285, -20)
|
||||
|
@ -86,13 +86,11 @@ position = Vector2(-25, 24)
|
||||
enabled = false
|
||||
target_scene = "c02_s01"
|
||||
target_portal = "right"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(676, 6)
|
||||
target_scene = "c02_s03"
|
||||
target_portal = "left"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="InteractableLeftPortal" parent="Ground/DeployLayer" index="2" instance=ExtResource("13_ck13g")]
|
||||
position = Vector2(28, -24)
|
||||
@ -110,7 +108,6 @@ frame_progress = 1.0
|
||||
|
||||
[node name="Ambush太暗了" parent="Ground/DeployLayer" index="4" instance=ExtResource("8_52as8")]
|
||||
position = Vector2(177, 42)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_os_key = "c02_太暗了"
|
||||
|
||||
[node name="海报1" parent="Ground/DeployLayer" index="5" instance=ExtResource("12_0fckv")]
|
||||
@ -147,7 +144,6 @@ enabled = false
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 0.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
|
||||
[node name="wall" type="StaticBody2D" parent="Ground/DeployLayer/Ambush纸人"]
|
||||
position = Vector2(3, 4)
|
||||
@ -169,7 +165,6 @@ position = Vector2(358, 50)
|
||||
trigger_mode = "interact"
|
||||
collision_width_and_x = Vector2(23.86, 0)
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "lumber_interacted"
|
||||
|
||||
[node name="杂物眨眼睛" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"]
|
||||
@ -211,7 +206,6 @@ mute_when_interacted = true
|
||||
position = Vector2(525, 61)
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "check_if_show_shoes"
|
||||
|
||||
[node name="煤油灯" parent="Ground/DeployLayer" index="17" instance=ExtResource("17_mpkj1")]
|
||||
@ -232,7 +226,6 @@ texture = ExtResource("22_jg8g0")
|
||||
|
||||
[node name="Ambush小蝉闪现" parent="Ground/DeployLayer" index="19" instance=ExtResource("8_52as8")]
|
||||
position = Vector2(388, 47)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "xiaochan_disappear"
|
||||
|
||||
[node name="小蝉" type="AnimatedSprite2D" parent="Ground/DeployLayer/Ambush小蝉闪现"]
|
||||
|
@ -43,6 +43,7 @@ func _on_ground_ready() -> void:
|
||||
counter = $"../DeployLayer/Interactable柜子" as Interactable2D
|
||||
counter.interacted.connect(_on_counter_interacted)
|
||||
if ArchiveManager.get_global_value(&"c02_counter_pushed_out"):
|
||||
counter.get_node("../Note柜子可放置区域").enable = false
|
||||
counter.visible = true
|
||||
if not ArchiveManager.get_global_value(&"c02_burning"):
|
||||
# 点燃前
|
||||
@ -185,9 +186,11 @@ func eavesdrop() -> void:
|
||||
SceneManager.player_action(14, true)
|
||||
ArchiveManager.set_global_entry(&"c02_eavesdrop_finished", true)
|
||||
await Util.wait(1.5)
|
||||
SceneManager.pop_os_with_str("c02_偷听李癞对话后")
|
||||
SceneManager.unlock_player()
|
||||
|
||||
|
||||
|
||||
func _setup_bully_or_burning(reenter_scene := false):
|
||||
if not ArchiveManager.get_global_value(&"c02_eavesdrop_finished"):
|
||||
# 弹珠游戏结束后就开始霸凌,此时禁止偷听。第一章结束后(火灾结束),第二章再偷听
|
||||
@ -258,7 +261,6 @@ func bully_end():
|
||||
func block_right_move():
|
||||
SceneManager.pop_os_with_str("c02_点火前阻止右移")
|
||||
|
||||
|
||||
# var count_down_tween:Tween
|
||||
|
||||
# func count_down():
|
||||
@ -276,6 +278,7 @@ func _on_counter_interacted():
|
||||
SceneManager.pop_os_with_str("c02_火灾等待准备")
|
||||
return
|
||||
counter.enabled = false
|
||||
counter.get_node("../Note柜子可放置区域").enable = false
|
||||
if not ArchiveManager.get_global_value(&"c02_burning"):
|
||||
GlobalFunctor.c02_fire_count_down_stop()
|
||||
# 6: 低位点火
|
||||
|
@ -22,7 +22,7 @@
|
||||
[ext_resource type="PackedScene" uid="uid://cw3q5pvciumil" path="res://scene/entity/interactable.tscn" id="8_xt8j0"]
|
||||
[ext_resource type="Texture2D" uid="uid://bgpf35bhrkl86" path="res://asset/art/scene/c02/s03_公寓一楼院子/铁门/打开 底层.png" id="9_liq0c"]
|
||||
[ext_resource type="Texture2D" uid="uid://cvtbiefbffjd7" path="res://asset/art/scene/c02/门_贴图/1015房间.png" id="9_vddfx"]
|
||||
[ext_resource type="Texture2D" uid="uid://diuh52qo2o6pa" path="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字.png" id="10_3nako"]
|
||||
[ext_resource type="Texture2D" uid="uid://diuh52qo2o6pa" path="res://asset/art/scene/c02/s03_公寓一楼院子/f_院子内墙上文字与柜子痕迹.png" id="10_3nako"]
|
||||
[ext_resource type="PackedScene" uid="uid://dnbutraty2285" path="res://scene/entity/partical/particals_ash_vertical.tscn" id="10_c3f8o"]
|
||||
[ext_resource type="PackedScene" uid="uid://cxw5rovg5mu1a" path="res://scene/ground/script/c02/s00_煤油灯.tscn" id="10_jme4f"]
|
||||
[ext_resource type="Texture2D" uid="uid://dooaferyy44rs" path="res://asset/art/scene/c02/s03_公寓一楼院子/e_前侧楼梯.png" id="10_ud2jg"]
|
||||
@ -290,21 +290,18 @@ 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")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx小蝉哼歌" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="2"]
|
||||
process_mode = 1
|
||||
stream = ExtResource("6_jhod7")
|
||||
volume_db = 16.0
|
||||
bus = &"game_sfx"
|
||||
@ -331,55 +328,53 @@ autoplay = "一楼二楼外侧楼道拼接-晃脚动画"
|
||||
position = Vector2(25, 11)
|
||||
target_scene = "c02_s02"
|
||||
target_portal = "right"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(2286, 16)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="火灾背景" type="Sprite2D" parent="Ground/DeployLayer" index="2"]
|
||||
[node name="Ambush保卫科旁边os" parent="Ground/DeployLayer" index="2" instance=ExtResource("25_iyaiw")]
|
||||
position = Vector2(138, 47)
|
||||
hook_os_key = "c02_院子_保卫科旁"
|
||||
|
||||
[node name="火灾背景" type="Sprite2D" parent="Ground/DeployLayer" index="3"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
position = Vector2(1189, 0)
|
||||
texture = ExtResource("6_d7h4s")
|
||||
|
||||
[node name="禁火等墙面文字" type="Sprite2D" parent="Ground/DeployLayer" index="3"]
|
||||
[node name="禁火等墙面文字" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
position = Vector2(955, 5)
|
||||
texture = ExtResource("10_3nako")
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="4" instance=ExtResource("5_00b7a")]
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="5" instance=ExtResource("5_00b7a")]
|
||||
position = Vector2(200, 10)
|
||||
debug_note = "1012保卫科"
|
||||
portal_name = "1"
|
||||
target_scene = "c02_s04"
|
||||
target_portal = "left"
|
||||
status = "opened"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_2" parent="Ground/DeployLayer" index="5" instance=ExtResource("5_00b7a")]
|
||||
[node name="portal_2" parent="Ground/DeployLayer" index="6" instance=ExtResource("5_00b7a")]
|
||||
position = Vector2(928, 7)
|
||||
debug_note = "一楼内侧过道
|
||||
"
|
||||
portal_name = "2"
|
||||
target_scene = "c02_s05"
|
||||
target_portal = "left"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_3" parent="Ground/DeployLayer" index="6" instance=ExtResource("5_00b7a")]
|
||||
[node name="portal_3" parent="Ground/DeployLayer" index="7" instance=ExtResource("5_00b7a")]
|
||||
position = Vector2(1704, 14)
|
||||
debug_note = "空房间 1014"
|
||||
portal_name = "3"
|
||||
target_scene = "c02_s10"
|
||||
target_portal = "left"
|
||||
status = "opened"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_4" parent="Ground/DeployLayer" index="7" instance=ExtResource("5_00b7a")]
|
||||
[node name="portal_4" parent="Ground/DeployLayer" index="8" instance=ExtResource("5_00b7a")]
|
||||
position = Vector2(1876, 49)
|
||||
debug_note = "霸凌传送点"
|
||||
portal_name = "4"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="Note血迹" parent="Ground/DeployLayer" index="8" instance=ExtResource("6_t48d1")]
|
||||
[node name="Note血迹" parent="Ground/DeployLayer" index="9" instance=ExtResource("6_t48d1")]
|
||||
position = Vector2(523, 78)
|
||||
title_filter = "c02"
|
||||
note_key = "c02_s03_干掉的血迹"
|
||||
@ -391,7 +386,7 @@ position = Vector2(132, 10)
|
||||
sprite_frames = ExtResource("4_gd6xp")
|
||||
animation = &"肉铺门口血迹"
|
||||
|
||||
[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="9"]
|
||||
[node name="灯笼" type="Node2D" parent="Ground/DeployLayer" index="10"]
|
||||
|
||||
[node name="灯笼" type="Sprite2D" parent="Ground/DeployLayer/灯笼"]
|
||||
position = Vector2(1644, -86)
|
||||
@ -441,7 +436,7 @@ energy = 0.7
|
||||
texture = SubResource("GradientTexture2D_kyfht")
|
||||
texture_scale = 2.2
|
||||
|
||||
[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/新背景_奠"]
|
||||
@ -476,12 +471,11 @@ 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")]
|
||||
position = Vector2(1353, 33)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "shocking_lighting"
|
||||
|
||||
[node name="排队常人" type="Sprite2D" parent="Ground/DeployLayer/闷雷_纸人闪现"]
|
||||
@ -504,12 +498,11 @@ 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)
|
||||
lock_player_on_playing_dialogue = null
|
||||
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
|
||||
@ -520,7 +513,7 @@ position = Vector2(0, -7)
|
||||
scale = Vector2(0.15, 0.15)
|
||||
texture = ExtResource("8_plfv5")
|
||||
|
||||
[node name="Event2D小蝉哼歌" type="Node2D" parent="Ground/DeployLayer" index="14"]
|
||||
[node name="Event2D小蝉哼歌" type="Node2D" parent="Ground/DeployLayer" index="15"]
|
||||
position = Vector2(800, -173)
|
||||
script = ExtResource("26_o1qbs")
|
||||
event = "c02_madman_interacted"
|
||||
@ -536,7 +529,7 @@ bus = &"game_sfx"
|
||||
script = ExtResource("54_o1qbs")
|
||||
metadata/_custom_type_script = "uid://wapo47a1oddf"
|
||||
|
||||
[node name="Interactable铁门" parent="Ground/DeployLayer" index="15" instance=ExtResource("8_xt8j0")]
|
||||
[node name="Interactable铁门" parent="Ground/DeployLayer" index="16" instance=ExtResource("8_xt8j0")]
|
||||
light_mask = 5
|
||||
position = Vector2(1222, 28)
|
||||
texture = ExtResource("7_gd6xp")
|
||||
@ -545,6 +538,12 @@ action_key = 3
|
||||
interacted_texture = ExtResource("9_liq0c")
|
||||
prop_key = "prop_老虎钳"
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/Interactable铁门" index="0"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/Interactable铁门" index="1"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable铁门/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_er6ob")
|
||||
|
||||
@ -556,7 +555,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="16" instance=ExtResource("6_t48d1")]
|
||||
[node name="Note算命摊位" parent="Ground/DeployLayer" index="17" instance=ExtResource("6_t48d1")]
|
||||
position = Vector2(725, 45)
|
||||
note_key = "c02_院子_算命摊位"
|
||||
|
||||
@ -564,13 +563,13 @@ note_key = "c02_院子_算命摊位"
|
||||
position = Vector2(0, 18)
|
||||
texture = ExtResource("6_1tart")
|
||||
|
||||
[node name="煤油灯" parent="Ground/DeployLayer" index="17" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯" parent="Ground/DeployLayer" index="18" 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="18" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯2" parent="Ground/DeployLayer" index="19" instance=ExtResource("10_jme4f")]
|
||||
position = Vector2(610, 1)
|
||||
gaslight_texture = ExtResource("11_g0qhj")
|
||||
ground_light_texture = ExtResource("12_ni5ro")
|
||||
@ -578,7 +577,7 @@ gaslight_energy = 1.5
|
||||
gaslight_ground_energy = 0.7
|
||||
mute_when_interacted = false
|
||||
|
||||
[node name="煤油灯3" parent="Ground/DeployLayer" index="19" instance=ExtResource("10_jme4f")]
|
||||
[node name="煤油灯3" parent="Ground/DeployLayer" index="20" instance=ExtResource("10_jme4f")]
|
||||
position = Vector2(857, 1)
|
||||
gaslight_texture = ExtResource("13_hw832")
|
||||
ground_light_texture = ExtResource("14_7pq5y")
|
||||
@ -586,49 +585,47 @@ gaslight_energy = 1.5
|
||||
gaslight_ground_energy = 0.7
|
||||
mute_when_interacted = false
|
||||
|
||||
[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="20"]
|
||||
[node name="井" type="Sprite2D" parent="Ground/DeployLayer" index="21"]
|
||||
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="21"]
|
||||
[node name="药车" type="Sprite2D" parent="Ground/DeployLayer" index="22"]
|
||||
light_mask = 5
|
||||
z_index = 10
|
||||
position = Vector2(1025, 27)
|
||||
texture = ExtResource("22_3y5s5")
|
||||
|
||||
[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="22" instance=ExtResource("23_81juy")]
|
||||
[node name="Closeup敲门游戏" parent="Ground/DeployLayer" index="23" 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="23" instance=ExtResource("23_81juy")]
|
||||
[node name="Closeup井" parent="Ground/DeployLayer" index="24" instance=ExtResource("23_81juy")]
|
||||
z_index = 6
|
||||
position = Vector2(2063, 50)
|
||||
packed_scene = ExtResource("26_yy4fp")
|
||||
action_key = 3
|
||||
|
||||
[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(1319, 40)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "shocking_lighting"
|
||||
|
||||
[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="25" instance=ExtResource("25_iyaiw")]
|
||||
[node name="Ambush偷听对话" parent="Ground/DeployLayer" index="26" instance=ExtResource("25_iyaiw")]
|
||||
position = Vector2(1836, 7)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "eavesdrop"
|
||||
|
||||
[node name="李氏赖子房间人影" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="26"]
|
||||
[node name="李氏赖子房间人影" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="27"]
|
||||
position = Vector2(1835, -16)
|
||||
sprite_frames = SubResource("SpriteFrames_0o4rt")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.643855
|
||||
|
||||
[node name="Npc井边疯子" parent="Ground/DeployLayer" index="27" instance=ExtResource("35_plfv5")]
|
||||
[node name="Npc井边疯子" parent="Ground/DeployLayer" index="28" instance=ExtResource("35_plfv5")]
|
||||
z_index = 10
|
||||
position = Vector2(2037, 67)
|
||||
sprite_frames = ExtResource("4_gd6xp")
|
||||
@ -640,7 +637,7 @@ sign_mark_height = 11.0
|
||||
speaking_sign_height = 49.0
|
||||
sign_x_offset = -2.0
|
||||
collision_width_and_x = Vector2(37.08, 0)
|
||||
dialogue_title = "c02_s11_井边疯子对话"
|
||||
dialogue_title = "c02_井边疯子对话"
|
||||
|
||||
[node name="StaticBody2D" type="StaticBody2D" parent="Ground/DeployLayer/Npc井边疯子"]
|
||||
position = Vector2(11, 7)
|
||||
@ -651,7 +648,7 @@ position = Vector2(-11, -3)
|
||||
shape = SubResource("RectangleShape2D_bbhbr")
|
||||
disabled = true
|
||||
|
||||
[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="28"]
|
||||
[node name="霸凌" type="Node2D" parent="Ground/DeployLayer" index="29"]
|
||||
visible = false
|
||||
position = Vector2(2154, 60)
|
||||
|
||||
@ -659,7 +656,6 @@ position = Vector2(2154, 60)
|
||||
position = Vector2(-185, -10)
|
||||
enabled = false
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "bully_ambush"
|
||||
|
||||
[node name="小蝉" parent="Ground/DeployLayer/霸凌" instance=ExtResource("33_ycojw")]
|
||||
@ -706,7 +702,6 @@ position = Vector2(-116, -13)
|
||||
enabled = false
|
||||
one_shot = false
|
||||
cooldown_time = 4.0
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "block_right_move"
|
||||
|
||||
[node name="wall" type="StaticBody2D" parent="Ground/DeployLayer/霸凌"]
|
||||
@ -718,7 +713,7 @@ collision_mask = 0
|
||||
shape = SubResource("RectangleShape2D_d7h4s")
|
||||
disabled = true
|
||||
|
||||
[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="29"]
|
||||
[node name="火灾" type="Node2D" parent="Ground/DeployLayer" index="30"]
|
||||
visible = false
|
||||
|
||||
[node name="右窗" type="AnimatedSprite2D" parent="Ground/DeployLayer/火灾"]
|
||||
@ -924,7 +919,6 @@ sign_mark_offset = Vector2(13.57, -39.84)
|
||||
enabled = false
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
|
||||
[node name="小婵呼吸" type="AnimatedSprite2D" parent="Ground/DeployLayer/火灾/Ambush等待的小蝉"]
|
||||
z_index = 9
|
||||
@ -961,7 +955,7 @@ script = ExtResource("54_o1qbs")
|
||||
loop = true
|
||||
metadata/_custom_type_script = "uid://wapo47a1oddf"
|
||||
|
||||
[node name="Interactable柜子" parent="Ground/DeployLayer" index="30" instance=ExtResource("8_xt8j0")]
|
||||
[node name="Interactable柜子" parent="Ground/DeployLayer" index="31" instance=ExtResource("8_xt8j0")]
|
||||
visible = false
|
||||
position = Vector2(1772, 48)
|
||||
texture = ExtResource("32_cpifc")
|
||||
@ -977,6 +971,11 @@ animation = &"箱子着火"
|
||||
autoplay = "箱子着火"
|
||||
frame_progress = 0.453645
|
||||
|
||||
[node name="Note柜子可放置区域" parent="Ground/DeployLayer" index="32" instance=ExtResource("6_t48d1")]
|
||||
position = Vector2(1771, 39)
|
||||
title_filter = "c02"
|
||||
note_key = "c02_柜子可放置区域"
|
||||
|
||||
[node name="PointLight2D" type="PointLight2D" parent="Ground/AmbientLayer" index="0"]
|
||||
light_mask = 4
|
||||
position = Vector2(2189, -142)
|
||||
|
@ -22,6 +22,10 @@ func _on_ground_ready() -> void:
|
||||
if not ArchiveManager.get_global_value(&"c02_tin_coin_taken"):
|
||||
closeup_tin_coin.exit.connect(_on_closeup_tin_coin_exited)
|
||||
|
||||
var closeup_book = $"../DeployLayer/Closeup花名册" as Closeup2D
|
||||
if closeup_book.icount == 0:
|
||||
closeup_book.exit.connect(_on_first_read, CONNECT_ONE_SHOT)
|
||||
|
||||
|
||||
func _on_closeup_tin_coin_exited(arg = null):
|
||||
if arg == true:
|
||||
@ -29,3 +33,7 @@ func _on_closeup_tin_coin_exited(arg = null):
|
||||
SceneManager.enable_prop_item_silently("prop_锡箔元宝")
|
||||
await Util.wait(0.5)
|
||||
SceneManager.enable_prop_item("prop_锡箔元宝")
|
||||
|
||||
|
||||
func _on_first_read(_arg) -> void:
|
||||
SceneManager.pop_os_with_str("c02_保卫科花名册首次互动结束")
|
||||
|
@ -64,11 +64,9 @@ texture = ExtResource("5_cy26p")
|
||||
position = Vector2(67, 29)
|
||||
target_scene = "c02_s03"
|
||||
target_portal = "1"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(551, 22)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="涂鸦提示" type="Sprite2D" parent="Ground/DeployLayer" index="2"]
|
||||
position = Vector2(275, 13)
|
||||
@ -97,6 +95,12 @@ hide_texture = true
|
||||
gaslight_texture = ExtResource("9_a43aq")
|
||||
ground_light_texture = ExtResource("10_svuj3")
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/煤油灯" index="0"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/煤油灯" index="1"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/煤油灯/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_gk1h4")
|
||||
|
||||
|
@ -129,11 +129,9 @@ offset = Vector2(0, -240)
|
||||
position = Vector2(24, 8)
|
||||
target_scene = "c02_s03"
|
||||
target_portal = "2"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(734, 33)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("4_tueh3")]
|
||||
position = Vector2(513, 37)
|
||||
@ -141,7 +139,6 @@ debug_note = "通往 1012 房间"
|
||||
portal_name = "1"
|
||||
target_scene = "c02_s07"
|
||||
target_portal = "right"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="Npc疯子" parent="Ground/DeployLayer" index="3" instance=ExtResource("9_8t4w6")]
|
||||
light_mask = 7
|
||||
@ -164,7 +161,6 @@ texture = SubResource("GradientTexture2D_2yvhw")
|
||||
position = Vector2(177, 50)
|
||||
enabled = false
|
||||
trigger_mode = "interact"
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "wood_puppet"
|
||||
|
||||
[node name="火苗" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="5"]
|
||||
@ -252,7 +248,6 @@ note_key = "c02_一楼死老鼠"
|
||||
position = Vector2(585, 80)
|
||||
enabled = false
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "mouse_pick_meat"
|
||||
|
||||
[node name="老鼠叼肉" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"]
|
||||
@ -288,7 +283,6 @@ visible = false
|
||||
visibility_layer = 5
|
||||
position = Vector2(394, 53)
|
||||
enabled = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "xiaochan_disappear"
|
||||
|
||||
[node name="ProSprite" parent="Ground/DeployLayer/Ambush小蝉消失" instance=ExtResource("22_heq1x")]
|
||||
|
@ -27,6 +27,8 @@ func _on_ground_ready() -> void:
|
||||
# 1: 牵手跑结束; 2: 谢幕演出结束
|
||||
and EventManager.get_stage(&"c02_burning_end") == 1
|
||||
):
|
||||
# 禁止再回到瞎子卧室
|
||||
ArchiveManager.set_global_entry(&"c02_the_blind_room_unlocked", false)
|
||||
# 第一章火灾结束,尾声演出
|
||||
_c02_final_show.call_deferred()
|
||||
else:
|
||||
@ -49,7 +51,6 @@ func _on_ground_ready() -> void:
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
closeup_ball = $"../DeployLayer/Closeup弹珠游戏" as Closeup2D
|
||||
|
||||
if ArchiveManager.get_global_value(&"c02_the_blind_room_unlocked"):
|
||||
@ -75,15 +76,14 @@ func glimpse_hide_out():
|
||||
|
||||
|
||||
func _on_mice_hole_interacted():
|
||||
mice_hole.enabled = false
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.lock_player()
|
||||
var animated_sprite = $"../DeployLayer/小老鼠拖鞋子" as AnimatedSprite2D
|
||||
animated_sprite.visible = true
|
||||
animated_sprite.frame = 8
|
||||
animated_sprite.play()
|
||||
await animated_sprite.animation_finished
|
||||
animated_sprite.visible = false
|
||||
mice_hole.enabled = true
|
||||
SceneManager.unlock_player()
|
||||
|
||||
if mice_hole.interacted_times >= 2:
|
||||
# 触发疯子撞墙,疯子在一楼内侧过道中消失
|
||||
@ -97,9 +97,10 @@ func _on_mice_hole_interacted():
|
||||
var sprite = $"../DeployLayer/疯子撞墙"
|
||||
sprite.play("疯子跑动")
|
||||
play("疯子撞墙")
|
||||
await Util.wait(3.5)
|
||||
SceneManager.pop_os_with_str("c02_老鼠叼鞋引开疯子")
|
||||
SceneManager.pop_debug_dialog_info("音效", "待补充撞墙音效")
|
||||
|
||||
SceneManager.release_player()
|
||||
|
||||
|
||||
func boys_ball_game() -> void:
|
||||
@ -108,12 +109,13 @@ func boys_ball_game() -> void:
|
||||
if stage == 0:
|
||||
ArchiveManager.set_global_entry(&"c02_ball_game_stage", 1)
|
||||
ArchiveManager.set_global_entry(&"c02_pliers_to_ball", true)
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.lock_player()
|
||||
DialogueManager.show_dialogue_balloon(dialogue_c02, "c02_s05_三男孩弹珠游戏1")
|
||||
await DialogueManager.dialogue_ended
|
||||
SceneManager.release_player()
|
||||
SceneManager.pop_os_with_str("c02_小手换回弹珠")
|
||||
SceneManager.unlock_player()
|
||||
elif stage == 1 or stage == 2:
|
||||
SceneManager.freeze_player(0)
|
||||
SceneManager.lock_player()
|
||||
if stage == 1 and SceneManager.get_current_prop(false) != "prop_弹珠":
|
||||
var hud = SceneManager.get_prop_hud() as PropHud
|
||||
hud.on_toggle_invalid_prop()
|
||||
@ -124,7 +126,7 @@ func boys_ball_game() -> void:
|
||||
closeup_ball.exit.connect(_on_ball_game_exit, CONNECT_ONE_SHOT)
|
||||
closeup_ball.display()
|
||||
# closeup_ball.enabled = false
|
||||
SceneManager.release_player()
|
||||
SceneManager.unlock_player()
|
||||
|
||||
|
||||
func _on_ball_game_exit(success = null):
|
||||
@ -175,3 +177,5 @@ func _on_exit_final_show(_arg):
|
||||
# 1: 牵手跑结束; 2: 谢幕演出结束
|
||||
EventManager.set_stage(&"c02_burning_end", 2)
|
||||
EventManager.set_stage_if_greater("handnote_stage", 5)
|
||||
# TODO 小蝉上楼后开启第二章
|
||||
ArchiveManager.archive.set_chapter_if_greater(3)
|
||||
|
@ -858,21 +858,18 @@ 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")
|
||||
@ -887,11 +884,9 @@ texture = ExtResource("3_och2w")
|
||||
position = Vector2(34, 8)
|
||||
target_scene = "c02_s07"
|
||||
target_portal = "1"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(873, 15)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("4_haidv")]
|
||||
position = Vector2(108, 14)
|
||||
@ -900,7 +895,6 @@ portal_name = "1"
|
||||
target_scene = "c02_s08"
|
||||
target_portal = "left"
|
||||
status = "locked"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_2" parent="Ground/DeployLayer" index="3" instance=ExtResource("4_haidv")]
|
||||
position = Vector2(222, 14)
|
||||
@ -909,7 +903,6 @@ portal_name = "2"
|
||||
target_scene = "c03_s01"
|
||||
holding = true
|
||||
holding_reason_key = "c02_杂物堆堵住"
|
||||
matched_sign_texture = null
|
||||
prop_key = "prop_2014钥匙"
|
||||
|
||||
[node name="楼道杂物堆" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
@ -942,6 +935,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 = 0
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/煤油灯" index="1"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/煤油灯/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_lh55k")
|
||||
|
||||
@ -963,6 +962,12 @@ disable_prop_after_interacted = true
|
||||
prop_key = "prop_小鞋子1"
|
||||
prop_key2 = "prop_小鞋子2"
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/Interactable老鼠洞" index="0"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/Interactable老鼠洞" index="1"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/Interactable老鼠洞/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_7kxvk")
|
||||
|
||||
@ -1015,7 +1020,6 @@ enabled = false
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 0.1
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "boys_ball_game"
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Ground/DeployLayer/Ambush三男孩"]
|
||||
@ -1149,7 +1153,6 @@ texture = SubResource("GradientTexture2D_h3h1a")
|
||||
position = Vector2(553, -5)
|
||||
texture = ExtResource("37_osg51")
|
||||
collision_width_and_x = Vector2(150, 0)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "glimpse_hide_out"
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
|
@ -39,14 +39,12 @@ texture = ExtResource("3_t0s64")
|
||||
|
||||
[node name="portal_left" parent="Ground/DeployLayer" index="0"]
|
||||
position = Vector2(40, 11)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(589, 18)
|
||||
debug_note = "下到一楼内侧楼道"
|
||||
target_scene = "c02_s05"
|
||||
target_portal = "1"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("4_5krke")]
|
||||
position = Vector2(374, 17)
|
||||
@ -55,7 +53,6 @@ debug_note = "二楼过道
|
||||
portal_name = "1"
|
||||
target_scene = "c02_s06"
|
||||
target_portal = "left"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="涂鸦提示" type="Sprite2D" parent="Ground/DeployLayer" index="3"]
|
||||
position = Vector2(272, 15)
|
||||
|
@ -125,7 +125,6 @@ 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"
|
||||
@ -133,14 +132,12 @@ 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")
|
||||
@ -168,11 +165,9 @@ position = Vector2(68, 17)
|
||||
target_scene = "c02_s06"
|
||||
target_portal = "1"
|
||||
status = "locked"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(676, 63)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("4_1ws4i")]
|
||||
position = Vector2(214, 31)
|
||||
@ -184,7 +179,6 @@ target_portal = "left"
|
||||
status = "opened"
|
||||
default_sign_texture = ExtResource("8_dkqw0")
|
||||
opened_sign_texture = ExtResource("8_dkqw0")
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/portal_1"]
|
||||
show_behind_parent = true
|
||||
@ -221,6 +215,12 @@ animation_low_mode = true
|
||||
hide_texture = true
|
||||
gaslight_energy = 2.0
|
||||
|
||||
[node name="SfxInvalid" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯" index="0"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="SfxSuccess" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯" index="1"]
|
||||
process_mode = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="Ground/DeployLayer/灯座Sprite2D/煤油灯/Area2D" index="0"]
|
||||
shape = SubResource("RectangleShape2D_a48k2")
|
||||
|
||||
@ -265,7 +265,6 @@ texture_scale = 1.5
|
||||
position = Vector2(571, 28)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "hole_interacted"
|
||||
|
||||
[node name="Sign" parent="Ground/DeployLayer/Ambush偷听" index="0"]
|
||||
@ -308,7 +307,6 @@ metadata/_custom_type_script = "uid://wapo47a1oddf"
|
||||
position = Vector2(522, 31)
|
||||
enabled = false
|
||||
trigger_mode = "interact"
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "look_back_hole"
|
||||
|
||||
[node name="Note十字架" parent="Ground/DeployLayer" index="11" instance=ExtResource("14_1ws4i")]
|
||||
|
@ -325,11 +325,9 @@ texture = ExtResource("13_4alth")
|
||||
position = Vector2(74, 87)
|
||||
target_scene = "c02_s08"
|
||||
target_portal = "right"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(4361, 61)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="黑影" type="Sprite2D" parent="Ground/DeployLayer" index="2"]
|
||||
visible = false
|
||||
@ -701,7 +699,6 @@ texture = ExtResource("17_drmtd")
|
||||
|
||||
[node name="Ambush老鼠" parent="Ground/DeployLayer" index="11" instance=ExtResource("6_6xql4")]
|
||||
position = Vector2(3822.5, 60.5)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "mouse_animation"
|
||||
|
||||
[node name="老鼠衔大洋" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="12"]
|
||||
@ -728,7 +725,6 @@ action_configs = Array[Dictionary]([{
|
||||
|
||||
[node name="Ambush剪影指天" parent="Ground/DeployLayer/小床人物" instance=ExtResource("6_6xql4")]
|
||||
position = Vector2(93, 81)
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "point_to_the_moon"
|
||||
|
||||
[node name="黑手" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="15"]
|
||||
|
@ -123,11 +123,9 @@ position = Vector2(97, 28.5923)
|
||||
target_scene = "c02_s03"
|
||||
target_portal = "3"
|
||||
status = "opened"
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(510, 20.7047)
|
||||
matched_sign_texture = null
|
||||
|
||||
[node name="Note进入隧道询问" parent="Ground/DeployLayer" index="2" instance=ExtResource("7_th1ek")]
|
||||
position = Vector2(362, 20)
|
||||
@ -242,7 +240,6 @@ texture = ExtResource("15_e24j0")
|
||||
[node name="Ambush首次进入血脚印" parent="Ground/DeployLayer" index="13" instance=ExtResource("14_3ftnp")]
|
||||
position = Vector2(192, 38.4517)
|
||||
cooldown_time = 0.1
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "first_enter_ambush"
|
||||
|
||||
[node name="PointLight2D" type="PointLight2D" parent="Ground/AmbientLayer" index="0"]
|
||||
|
@ -72,7 +72,6 @@ texture = ExtResource("6_gge8e")
|
||||
position = Vector2(214, 11)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
lock_player_on_playing_dialogue = null
|
||||
hook_method = "knock_light_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动" parent="Ground/DeployLayer" index="5" instance=ExtResource("9_yywsi")]
|
||||
@ -80,7 +79,6 @@ position = Vector2(103, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动2" parent="Ground/DeployLayer" index="6" instance=ExtResource("9_yywsi")]
|
||||
@ -88,7 +86,6 @@ position = Vector2(539, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动3" parent="Ground/DeployLayer" index="7" instance=ExtResource("9_yywsi")]
|
||||
@ -96,7 +93,6 @@ position = Vector2(663, 5)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="追猫猪头怪_左侧" parent="Ground/DeployLayer" index="8" instance=ExtResource("10_kmk38")]
|
||||
|
@ -49,7 +49,6 @@ position = Vector2(105, 16)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="追猫猪头怪" parent="Ground/DeployLayer" index="4" instance=ExtResource("6_fjtlb")]
|
||||
|
@ -52,7 +52,6 @@ position = Vector2(106, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="追猫猪头怪" parent="Ground/DeployLayer" index="4" instance=ExtResource("6_pfgbg")]
|
||||
|
@ -44,7 +44,6 @@ position = Vector2(661, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动3" parent="Ground/DeployLayer" index="3" instance=ExtResource("5_emyx1")]
|
||||
@ -52,7 +51,6 @@ position = Vector2(538, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动2" parent="Ground/DeployLayer" index="4" instance=ExtResource("5_emyx1")]
|
||||
@ -60,7 +58,6 @@ position = Vector2(104, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="Ambush猫咪敲门互动4" parent="Ground/DeployLayer" index="5" instance=ExtResource("5_emyx1")]
|
||||
@ -68,7 +65,6 @@ position = Vector2(219, 6)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
cooldown_time = 1.5
|
||||
lock_player_on_playing_dialogue = null
|
||||
global_method = "c02_cat_play_with_door"
|
||||
|
||||
[node name="追猫猪头怪" parent="Ground/DeployLayer" index="6" instance=ExtResource("6_xoyld")]
|
||||
|
17
scene/ground/scene/c03/s01_瞎子理发店.gd
Normal file
17
scene/ground/scene/c03/s01_瞎子理发店.gd
Normal file
@ -0,0 +1,17 @@
|
||||
@tool
|
||||
extends AnimationRoot
|
||||
|
||||
|
||||
# 覆盖该方法
|
||||
func _default_data() -> Dictionary:
|
||||
return {}
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
if Engine.is_editor_hint():
|
||||
return
|
||||
|
||||
|
||||
func _on_ground_ready() -> void:
|
||||
pass
|
1
scene/ground/scene/c03/s01_瞎子理发店.gd.uid
Normal file
1
scene/ground/scene/c03/s01_瞎子理发店.gd.uid
Normal file
@ -0,0 +1 @@
|
||||
uid://cim5bqm2nayls
|
164
scene/ground/scene/c03/s01_瞎子理发店.tscn
Normal file
164
scene/ground/scene/c03/s01_瞎子理发店.tscn
Normal file
@ -0,0 +1,164 @@
|
||||
[gd_scene load_steps=10 format=3 uid="uid://dlrbhfvnd3cs0"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_eb2op"]
|
||||
[ext_resource type="Script" uid="uid://cim5bqm2nayls" path="res://scene/ground/scene/c03/s01_瞎子理发店.gd" id="2_jxanq"]
|
||||
[ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="3_lb1oo"]
|
||||
[ext_resource type="Texture2D" uid="uid://6ol2om68cd1q" path="res://asset/art/scene/c02/s06_二楼楼道/bg_背景.png" id="7_tfw8r"]
|
||||
[ext_resource type="Texture2D" uid="uid://crev0svowqla" path="res://asset/art/scene/c02/s06_二楼楼道/fg_前景.png" id="24_oel41"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_k01ve"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("DirectionalLight2D:energy")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.9]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MainPlayer:hide_sprite")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("MainPlayer:visible")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_lh55k"]
|
||||
resource_name = "c02_final_show_end"
|
||||
length = 14.0
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("MainPlayer:hide_sprite")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 3.8),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 1,
|
||||
"values": [true, false]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MainPlayer:visible")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ciatp"]
|
||||
resource_name = "c02_final_show_join"
|
||||
length = 12.5
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("DirectionalLight2D:energy")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 12.1, 12.5),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [1.0, 1.0, 0.9]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MainPlayer:visible")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_k01ve"),
|
||||
&"c02_final_show_end": SubResource("Animation_lh55k"),
|
||||
&"c02_final_show_join": SubResource("Animation_ciatp")
|
||||
}
|
||||
|
||||
[node name="S01" type="Node2D"]
|
||||
|
||||
[node name="Ground" parent="." instance=ExtResource("1_eb2op")]
|
||||
scene_name = "c03_s01"
|
||||
player_y = 60
|
||||
|
||||
[node name="AnimationPlayer" parent="Ground" index="0"]
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_k01ve")
|
||||
}
|
||||
script = ExtResource("2_jxanq")
|
||||
data = {
|
||||
"c02_final_show": false,
|
||||
"oneshot_animation_played": false
|
||||
}
|
||||
oneshot_animation = ""
|
||||
|
||||
[node name="VibeSfx" type="Node" parent="Ground/AnimationPlayer" index="0"]
|
||||
script = ExtResource("3_lb1oo")
|
||||
autoplay_group = &"c02_楼道2"
|
||||
metadata/_custom_type_script = "uid://cpejxlfni6n52"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
light_mask = 5
|
||||
position = Vector2(0, -2)
|
||||
texture = ExtResource("7_tfw8r")
|
||||
|
||||
[node name="portal_left" parent="Ground/DeployLayer" index="0"]
|
||||
position = Vector2(34, 8)
|
||||
target_scene = "c02_s07"
|
||||
target_portal = "1"
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(873, 15)
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(63, 95)
|
||||
catty_light_energy = 0.5
|
||||
facing_direction = Vector2(1, 0)
|
||||
|
||||
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
|
||||
position = Vector2(0, -5)
|
||||
scale = Vector2(1.1, 1.1)
|
||||
texture = ExtResource("24_oel41")
|
||||
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(26, 150, 900, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
energy = 0.9
|
||||
blend_mode = 1
|
||||
|
||||
[editable path="Ground"]
|
@ -43,6 +43,7 @@ signal lighted
|
||||
if Engine.is_editor_hint() and is_node_ready():
|
||||
_switch_gaslight(debug_light_switch)
|
||||
|
||||
|
||||
@onready var point_light = $PointLight2D as PointLight2D
|
||||
@onready var point_light_ground = $PointLightGround2D as PointLight2D
|
||||
@onready var light_sprite2d = $"灯光" as AnimatedSprite2D
|
||||
|
@ -68,6 +68,7 @@ var icount: int:
|
||||
SceneManager.pop_os_with_str("c02_小手出现摔倒")
|
||||
Util.timer(1.5, $"Sfx摔倒".play)
|
||||
await SceneManager.get_player().animation_finished
|
||||
SceneManager.pop_os_with_str("c02_小手是什么鬼")
|
||||
SceneManager.unlock_player()
|
||||
elif stage == 1:
|
||||
# 第二次交互小手
|
||||
@ -213,7 +214,7 @@ func _on_interacted() -> void:
|
||||
await Util.wait(1.5)
|
||||
coin.visible = true
|
||||
if not ArchiveManager.get_global_value(&"c02_little_hand_dropped_tin"):
|
||||
SceneManager.pop_os_with_str("c02_小手其他交易")
|
||||
SceneManager.pop_os_with_str("c02_小手还能换什么")
|
||||
ArchiveManager.set_global_entry(&"c02_little_hand_dropped_tin", true)
|
||||
|
||||
# 是否允许老虎钳换弹珠
|
||||
|
@ -35,6 +35,7 @@ var selected_book := NON_SELECTED:
|
||||
if value != NON_SELECTED:
|
||||
_toggle_book(true, value[0], value[1])
|
||||
selected_book = value
|
||||
var row_correct_status = [false, false, false]
|
||||
var gameover = false
|
||||
|
||||
|
||||
@ -48,10 +49,12 @@ func _ready() -> void:
|
||||
# shuffle at the end
|
||||
_shuffle_books()
|
||||
|
||||
|
||||
func _enter_tree() -> void:
|
||||
if not Engine.is_editor_hint():
|
||||
SceneManager.pop_center_notification(tr("input_书架游戏"))
|
||||
|
||||
|
||||
func _init_answer_and_connect_signals() -> void:
|
||||
current_answer.clear()
|
||||
for row in range(3):
|
||||
@ -83,8 +86,8 @@ func _shuffle_books() -> void:
|
||||
selected_book = NON_SELECTED
|
||||
suffling = true
|
||||
rand_from_seed(Time.get_ticks_usec())
|
||||
# 猫 4 次
|
||||
var shuffle_times = 4
|
||||
# 猫 2 次
|
||||
var shuffle_times = 2
|
||||
var r_size = current_answer[0].size()
|
||||
for _i in range(shuffle_times):
|
||||
var col_1 = randi() % r_size
|
||||
@ -92,8 +95,8 @@ func _shuffle_books() -> void:
|
||||
selected_book = [0, col_1]
|
||||
_interchange_book(0, col_2, false)
|
||||
_relocate_books(0)
|
||||
# 其他 1 次
|
||||
shuffle_times = 1
|
||||
# 其他 2 次
|
||||
shuffle_times = 2
|
||||
r_size = current_answer[1].size()
|
||||
for _i in range(shuffle_times):
|
||||
var col_1 = randi() % r_size
|
||||
@ -114,7 +117,7 @@ func _shuffle_books() -> void:
|
||||
|
||||
|
||||
func _on_book_pressed(row: int, id: int) -> void:
|
||||
if gameover:
|
||||
if gameover or row_correct_status[row]:
|
||||
return
|
||||
var col = current_answer[row].find(id)
|
||||
if selected_book == NON_SELECTED:
|
||||
@ -186,37 +189,53 @@ func _relocate_books(row: int) -> void:
|
||||
|
||||
func _check_answer() -> void:
|
||||
# 第一行需要顺序排列
|
||||
if not row_correct_status[0]:
|
||||
var row_success = true
|
||||
var row1 = current_answer[0]
|
||||
for col in range(row1.size()):
|
||||
if row1[col] != col:
|
||||
return
|
||||
row_success = false
|
||||
break
|
||||
if row_success:
|
||||
row_correct_status[0] = true
|
||||
$SfxRowSuccess.play()
|
||||
|
||||
# 第二行需要正序排列
|
||||
if not row_correct_status[1]:
|
||||
var row_success = true
|
||||
var row2 = current_answer[1]
|
||||
var size2 = row2.size()
|
||||
if row2[0] == 0:
|
||||
# 正序
|
||||
for col in range(1, size2):
|
||||
for col in range(row2.size()):
|
||||
if row2[col] != col:
|
||||
return
|
||||
else:
|
||||
return
|
||||
# # 倒序
|
||||
# for col in range(size2):
|
||||
# if row2[col] != size2 - 1 - col:
|
||||
# return
|
||||
row_success = false
|
||||
break
|
||||
if row_success:
|
||||
row_correct_status[1] = true
|
||||
$SfxRowSuccess.play()
|
||||
# 第三行正序或者倒序都可以
|
||||
if not row_correct_status[2]:
|
||||
var row_success = true
|
||||
var _row3 = current_answer[2]
|
||||
var _size3 = _row3.size()
|
||||
if _row3[0] == 0:
|
||||
# 正序
|
||||
for col in range(1, _size3):
|
||||
if _row3[col] != col:
|
||||
return
|
||||
row_success = false
|
||||
break
|
||||
else:
|
||||
# 倒序
|
||||
for col in range(_size3):
|
||||
if _row3[col] != _size3 - 1 - col:
|
||||
return
|
||||
row_success = false
|
||||
break
|
||||
if row_success:
|
||||
row_correct_status[2] = true
|
||||
$SfxRowSuccess.play()
|
||||
# 检查是否成功
|
||||
if row_correct_status[0] and row_correct_status[1] and row_correct_status[2]:
|
||||
_success()
|
||||
|
||||
# # 最后一行按色块排列;0-6 蓝色(7个)在一起,7-11 红色(5个)在一起,12-17 黄色(6个)在一起
|
||||
# var row3 = current_answer[2]
|
||||
# # 0: blue, 1: red, 2: yellow
|
||||
@ -234,7 +253,6 @@ func _check_answer() -> void:
|
||||
# if visited[color] == 0:
|
||||
# visiting_init = true
|
||||
# success
|
||||
_success()
|
||||
|
||||
|
||||
# 0: blue, 1: red, 2: yellow
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=52 format=3 uid="uid://fwfr0b2sylwx"]
|
||||
[gd_scene load_steps=53 format=3 uid="uid://fwfr0b2sylwx"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b7iavnqno6e3s" path="res://scene/little_game/书架/书架.gd" id="1_8af23"]
|
||||
[ext_resource type="AudioStream" uid="uid://6v8oqjaj01nj" path="res://asset/audio/sfx/交互/序章/04_书店内_书本掉落.wav" id="2_c6xiu"]
|
||||
@ -9,6 +9,7 @@
|
||||
[ext_resource type="PackedScene" uid="uid://bl5pohc77hi43" path="res://scene/little_game/书架/生死簿.tscn" id="6_mhajy"]
|
||||
[ext_resource type="SpriteFrames" uid="uid://bmwm400w8r4ju" path="res://asset/art/gif/c01_书店/c01_书店_frames.tres" id="6_nyh8c"]
|
||||
[ext_resource type="Texture2D" uid="uid://bbskja06j74v0" path="res://asset/art/little_game/书架_生死簿/书架合并.png" id="6_pxxx5"]
|
||||
[ext_resource type="AudioStream" uid="uid://bg3imaloeq3ev" path="res://asset/audio/effect/action/bookPlace2.ogg" id="7_e380y"]
|
||||
[ext_resource type="Texture2D" uid="uid://bp3ffg8knb8j5" path="res://asset/art/little_game/书架_生死簿/书架 书合并本.png" id="8_5brf2"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_6hdac"]
|
||||
@ -180,33 +181,36 @@ layer = 5
|
||||
script = ExtResource("1_8af23")
|
||||
|
||||
[node name="Sfx书本掉落" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("2_c6xiu")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5brf2")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx扶正书本" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_o6bsw")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5brf2")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="SfxInterchange" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_c6xiu")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5brf2")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="SfxSelect" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_pfav2")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5brf2")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="SfxRowSuccess" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("7_e380y")
|
||||
volume_db = -5.0
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("3_5brf2")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Shelf" type="Sprite2D" parent="."]
|
||||
position = Vector2(283, 160)
|
||||
texture = SubResource("AtlasTexture_6hdac")
|
||||
|
@ -296,7 +296,6 @@ position = Vector2(6.4373e-06, -9.53674e-07)
|
||||
polygon = PackedVector2Array(31.5, -37.5, 29.7, -38, 18.4, -38, -19.7, -28.9, -26, -32, -30.7, -32, -32.5, -28.4, -32.5, -23.2, -24.5, -15.2, -24.5, -9.6, -20.5, -8.3, -20.5, 4.5, -17.7, 10, -14.5, 30.3, -14.5, 32, -10.5, 35, -10.5, 37, 3.3, 37, 4.5, 26.1, 6.2, 25, 9.3, 25, 7.5, 19.6, 10.6, 14, 13.1, 14, 10.5, 4, 10.5, 3.2, 21, -2, 23.6, -2, 31.6, -14, 32.5, -14, 32.5, -22.4, 31.5, -28.3)
|
||||
|
||||
[node name="Drawer" type="Node2D" parent="All"]
|
||||
visible = false
|
||||
position = Vector2(20.5, 0)
|
||||
|
||||
[node name="BoxDrawer" type="Sprite2D" parent="All/Drawer"]
|
||||
@ -324,8 +323,7 @@ texture = ExtResource("31_wq2wm")
|
||||
limit_rect = Rect2(150, 150, 220, 70)
|
||||
|
||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="All/Drawer/Draggable2"]
|
||||
position = Vector2(-1.99999, 0.999999)
|
||||
polygon = PackedVector2Array(46.8, -40.3, 44, -39.5, 44, -38.3, 42, -37.2, 42, -30, 31.2, -30, 30, -32.5, 30, -34.3, 27.5, -35.4, 26.2, -34, 22.8, -34, 20, -36.8, 20, -38.3, 17.5, -39.4, 15.2, -37, 13.8, -37, 12.7, -35, 15.7, -30, 13.5, -30, 12, -35, 12, -37.3, 9.5, -38.4, 5, -33.8, -4, -31.6, -4, -30, -15.9, -30, -17, -31.7, -17, -33.6, -26.8, -36, -28.8, -36, -33.8, -31, -35.6, -31, -43, 4.8, -43, 10.4, -45.4, 9, -46.9, 9, -50.9, 3, -51, -12.3, -50.3, -12, -46.9, -12, -44.9, -15, -42.7, -15, -44, -25, -44, -28.9, -51, -34.9, -51, -37.2, -62.2, -36, -64.9, -36, -72.9, -27, -74.6, -27, -78.5, -11, -80.1, -11, -79, 14.1, -79, 20.6, -73, 30.5, -73, 33, -63, 40.9, -63, 42.4, -58.3, 44, -42.4, 44, -40, 50.4, -40, 53.1, -35, 56.1, -35, 57.8, -25.1, 59, 12.8, 59, 16, 55.8, 16, 48.4, 23.2, 46, 25.2, 48, 33.8, 48, 38.8, 58, 61, 58, 64, 54, 68, 54, 77, 41.7, 77, 28.4, 73.1, 22, 72, 13, 72, 3.2, 69, 0.199997, 69, -20.7, 56, -36.9, 56, -38.5, 53.1, -39.3, 50.4, -35)
|
||||
polygon = PackedVector2Array(5.5, -37.9, 3, -36.8, 3, -35.8, 1, -34.7, 1, -30.5, 2.2, -29.6, 1.2, -28.1, -4.2, -33.5, -6.8, -33.5, -10, -30.3, -10, -27.5, -12.7, -25.5, -14.2, -25.5, -15, -31.5, -15, -35.5, -24.3, -31.5, -26.3, -31.5, -27.4, -29, -24, -25.7, -24, -23.3, -24.8, -22.5, -26.6, -22.5, -27.5, -18.8, -35, -26.3, -35, -28.5, -43.8, -28.5, -52.8, -19.5, -54.7, -19.5, -56.7, -7.5, -58.1, -7.5, -57, 10.6, -57, 16.1, -53, 22.1, -53, 24.5, -44, 31.4, -44, 33.5, -31.1, 33.5, -27, 40.1, -27, 42.3, -19, 43.2, -19, 44.5, 10.1, 44.5, 15.5, 35.8, 18.8, 36.5, 22.9, 36.5, 26.8, 43.5, 42.8, 43.5, 45.8, 40.5, 49.1, 40.5, 55.1, 31.5, 57.4, 31.5, 48, -20.9, 48, -22.3, 38, -32.3, 38, -34.5, 28.4, -34.5, 27, -28.7, 27, -25.6, 25.4, -24.6, 23, -26.5, 23, -27.8, 20.5, -28.9, 17.4, -25.9)
|
||||
|
||||
[node name="Draggable3" parent="All/Drawer" instance=ExtResource("16_h88gi")]
|
||||
position = Vector2(368.5, 175)
|
||||
|
@ -258,7 +258,6 @@ script = ExtResource("1_p2trd")
|
||||
|
||||
[node name="Sfx结尾小孩跑" type="AudioStreamPlayer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
process_mode = 1
|
||||
stream = ExtResource("2_aqxy0")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_co06r")
|
||||
@ -307,21 +306,18 @@ libraries = {
|
||||
}
|
||||
|
||||
[node name="SfxHit" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("3_co06r")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_co06r")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="SfxShoot" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = SubResource("AudioStreamInteractive_aqxy0")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_co06r")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="SfxDispatch" type="AudioStreamPlayer" parent="."]
|
||||
process_mode = 1
|
||||
stream = ExtResource("6_ctokx")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_co06r")
|
||||
|
@ -5,6 +5,8 @@ extends Node2D
|
||||
# TranslationServer.set_locale(val)
|
||||
# locale = val
|
||||
|
||||
@onready var vignette = %Vignette as ColorRect
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
%UILayer.layer = GlobalConfig.CANVAS_LAYER_UI
|
||||
@ -31,3 +33,18 @@ func _unhandled_input(event: InputEvent) -> void:
|
||||
elif event.is_action_pressed("panel"):
|
||||
get_viewport().set_input_as_handled()
|
||||
SceneManager.show_panel()
|
||||
|
||||
|
||||
var vignette_tween: Tween
|
||||
|
||||
|
||||
func tween_vignette(ratio := 0.5, duration := 0.3, color := Color.RED):
|
||||
if vignette_tween and vignette_tween.is_valid():
|
||||
vignette_tween.kill()
|
||||
vignette_tween = create_tween()
|
||||
vignette_tween.tween_property(
|
||||
vignette.material, "shader_parameter/vignette_ratio", ratio, duration
|
||||
)
|
||||
vignette_tween.parallel().tween_property(
|
||||
vignette.material, "shader_parameter/vignette_rgb", color, duration
|
||||
)
|
||||
|
@ -1,12 +1,19 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://dygvcmykn02n8"]
|
||||
[gd_scene load_steps=9 format=3 uid="uid://dygvcmykn02n8"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://jn2alpdl4eal" path="res://scene/main.gd" id="1_pks84"]
|
||||
[ext_resource type="PackedScene" uid="uid://dc778gsjfr3ky" path="res://scene/ux/prop_hud.tscn" id="4_t7gb2"]
|
||||
[ext_resource type="PackedScene" uid="uid://5g07x6q7wwr1" path="res://scene/notification/notification.tscn" id="5_3gg5t"]
|
||||
[ext_resource type="PackedScene" uid="uid://cekhj65axie0p" path="res://scene/ux/prop_inspector.tscn" id="5_ux0rw"]
|
||||
[ext_resource type="Shader" uid="uid://do181iuabeoom" path="res://asset/shader/vignette.gdshader" id="7_p1hux"]
|
||||
[ext_resource type="Environment" uid="uid://c6ri8tn5qt6fe" path="res://scene/ground/environment.tres" id="9_jsof5"]
|
||||
[ext_resource type="PackedScene" uid="uid://clxgkj80yin2" path="res://scene/ground/ground_loader.tscn" id="10_8rc5n"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_of57s"]
|
||||
shader = ExtResource("7_p1hux")
|
||||
shader_parameter/vignette_ratio = 0.0
|
||||
shader_parameter/vignette_intensity = 0.3
|
||||
shader_parameter/vignette_rgb = Color(0.753, 0, 0, 1)
|
||||
|
||||
[node name="Main" type="Node2D"]
|
||||
script = ExtResource("1_pks84")
|
||||
|
||||
@ -24,6 +31,19 @@ unique_name_in_owner = true
|
||||
unique_name_in_owner = true
|
||||
layer = 12
|
||||
|
||||
[node name="Vignette" type="ColorRect" parent="UILayer"]
|
||||
unique_name_in_owner = true
|
||||
material = SubResource("ShaderMaterial_of57s")
|
||||
custom_minimum_size = Vector2(564, 240)
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = 38.0
|
||||
offset_bottom = -38.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="ColorRectTop" type="ColorRect" parent="UILayer"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(564, 38.5)
|
||||
|
@ -13,7 +13,7 @@ func run_clip(card_mode: bool):
|
||||
if not card_mode:
|
||||
await Util.wait(3.0)
|
||||
# 增加配音
|
||||
dialog_node = DialogueManager.show_dialogue_balloon(dialogue_res, "c02_s11_井边疯子对话")
|
||||
dialog_node = DialogueManager.show_dialogue_balloon(dialogue_res, "c02_井边疯子对话")
|
||||
dialog_node.process_mode = Node.PROCESS_MODE_ALWAYS
|
||||
await DialogueManager.dialogue_ended
|
||||
display_finished.emit()
|
||||
|
Loading…
Reference in New Issue
Block a user