Compare commits

...

2 Commits

Author SHA1 Message Date
3abad98e1f 红色背景优化 2025-06-18 21:02:36 +08:00
70673f0fed 裂缝演出优化 2025-06-18 18:15:49 +08:00
47 changed files with 772 additions and 238 deletions

View File

@ -20,37 +20,37 @@
[resource] [resource]
animations = [{ animations = [{
"frames": [{ "frames": [{
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("1_hj708") "texture": ExtResource("1_hj708")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("2_1du44") "texture": ExtResource("2_1du44")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("3_lhftd") "texture": ExtResource("3_lhftd")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("4_mg204") "texture": ExtResource("4_mg204")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("5_f5uit") "texture": ExtResource("5_f5uit")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("6_m5vcj") "texture": ExtResource("6_m5vcj")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("7_1671v") "texture": ExtResource("7_1671v")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("8_mvc2t") "texture": ExtResource("8_mvc2t")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("9_dko4h") "texture": ExtResource("9_dko4h")
}, { }, {
"duration": 1.8, "duration": 4.0,
"texture": ExtResource("10_rxt3q") "texture": ExtResource("10_rxt3q")
}], }],
"loop": true, "loop": false,
"name": &"疯子撞墙", "name": &"疯子撞墙",
"speed": 30.0 "speed": 30.0
}, { }, {

View File

@ -1,4 +1,4 @@
[gd_resource type="SpriteFrames" load_steps=33 format=3 uid="uid://dxu8w8d8oty65"] [gd_resource type="SpriteFrames" load_steps=37 format=3 uid="uid://dxu8w8d8oty65"]
[ext_resource type="Texture2D" uid="uid://rpn4mftq06xw" path="res://asset/art/gif/c02_红色梦境/小眼睛睁开/0.png" id="1_a71jv"] [ext_resource type="Texture2D" uid="uid://rpn4mftq06xw" path="res://asset/art/gif/c02_红色梦境/小眼睛睁开/0.png" id="1_a71jv"]
[ext_resource type="Texture2D" uid="uid://cbjhwihdhavsu" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话/0.png" id="1_hdfk4"] [ext_resource type="Texture2D" uid="uid://cbjhwihdhavsu" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话/0.png" id="1_hdfk4"]
@ -19,8 +19,6 @@
[ext_resource type="Texture2D" uid="uid://c6y68awsexydi" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/4.png" id="5_yv6am"] [ext_resource type="Texture2D" uid="uid://c6y68awsexydi" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/4.png" id="5_yv6am"]
[ext_resource type="Texture2D" uid="uid://3be4rargl7t" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/5.png" id="6_86cv7"] [ext_resource type="Texture2D" uid="uid://3be4rargl7t" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/5.png" id="6_86cv7"]
[ext_resource type="Texture2D" uid="uid://du8xuuoxdbj3r" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话/5.png" id="6_y12gu"] [ext_resource type="Texture2D" uid="uid://du8xuuoxdbj3r" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话/5.png" id="6_y12gu"]
[ext_resource type="Texture2D" uid="uid://bjs0pf8057uti" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/6.png" id="7_kf3ru"]
[ext_resource type="Texture2D" uid="uid://bw14can5x2nm0" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天)/7.png" id="8_fl0rx"]
[ext_resource type="Texture2D" uid="uid://dsblrpm034as3" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/0.png" id="14_8ivt7"] [ext_resource type="Texture2D" uid="uid://dsblrpm034as3" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/0.png" id="14_8ivt7"]
[ext_resource type="Texture2D" uid="uid://pvnrpk6a8ps0" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/1.png" id="15_c7k2o"] [ext_resource type="Texture2D" uid="uid://pvnrpk6a8ps0" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/1.png" id="15_c7k2o"]
[ext_resource type="Texture2D" uid="uid://bl4iwrm27qall" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/2.png" id="16_d55mq"] [ext_resource type="Texture2D" uid="uid://bl4iwrm27qall" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(呼吸)/2.png" id="16_d55mq"]
@ -32,6 +30,12 @@
[ext_resource type="Texture2D" uid="uid://c1gswi82n8wjo" path="res://asset/art/gif/c02_红色梦境/大眼睛动画/2.png" id="19_lluc1"] [ext_resource type="Texture2D" uid="uid://c1gswi82n8wjo" path="res://asset/art/gif/c02_红色梦境/大眼睛动画/2.png" id="19_lluc1"]
[ext_resource type="Texture2D" uid="uid://cejnves6646lw" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天呼吸)/2.png" id="20_gwken"] [ext_resource type="Texture2D" uid="uid://cejnves6646lw" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天呼吸)/2.png" id="20_gwken"]
[ext_resource type="Texture2D" uid="uid://drxfl0efa72u" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天呼吸)/3.png" id="21_bvlmc"] [ext_resource type="Texture2D" uid="uid://drxfl0efa72u" path="res://asset/art/gif/c02_红色梦境/红色背景剪影人物床(指天呼吸)/3.png" id="21_bvlmc"]
[ext_resource type="Texture2D" uid="uid://cbjhwihdhavsu" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/0.png" id="24_0k5we"]
[ext_resource type="Texture2D" uid="uid://b7jlo0bith1vd" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/1.png" id="25_g6qp8"]
[ext_resource type="Texture2D" uid="uid://weutdv750wv8" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/2.png" id="26_b20v1"]
[ext_resource type="Texture2D" uid="uid://dwean2yri24xl" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/3.png" id="27_nh0y5"]
[ext_resource type="Texture2D" uid="uid://rk47ys5r8atn" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/4.png" id="28_6h10p"]
[ext_resource type="Texture2D" uid="uid://du8xuuoxdbj3r" path="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/5.png" id="29_dhh4q"]
[resource] [resource]
animations = [{ animations = [{
@ -48,7 +52,7 @@ animations = [{
"duration": 9.9, "duration": 9.9,
"texture": ExtResource("17_4w81c") "texture": ExtResource("17_4w81c")
}], }],
"loop": false, "loop": true,
"name": &"剪影人物床_呼吸", "name": &"剪影人物床_呼吸",
"speed": 30.0 "speed": 30.0
}, { }, {
@ -68,16 +72,10 @@ animations = [{
"duration": 9.9, "duration": 9.9,
"texture": ExtResource("5_yv6am") "texture": ExtResource("5_yv6am")
}, { }, {
"duration": 9.9, "duration": 30.0,
"texture": ExtResource("6_86cv7") "texture": ExtResource("6_86cv7")
}, {
"duration": 9.9,
"texture": ExtResource("7_kf3ru")
}, {
"duration": 9.9,
"texture": ExtResource("8_fl0rx")
}], }],
"loop": true, "loop": false,
"name": &"剪影人物床_指天", "name": &"剪影人物床_指天",
"speed": 30.0 "speed": 30.0
}, { }, {
@ -136,6 +134,29 @@ animations = [{
"speed": 30.0 "speed": 30.0
}, { }, {
"frames": [{ "frames": [{
"duration": 1.0,
"texture": ExtResource("24_0k5we")
}, {
"duration": 1.0,
"texture": ExtResource("25_g6qp8")
}, {
"duration": 1.0,
"texture": ExtResource("26_b20v1")
}, {
"duration": 1.0,
"texture": ExtResource("27_nh0y5")
}, {
"duration": 1.0,
"texture": ExtResource("28_6h10p")
}, {
"duration": 1.0,
"texture": ExtResource("29_dhh4q")
}],
"loop": true,
"name": &"小嘴巴说话_改",
"speed": 5.0
}, {
"frames": [{
"duration": 6.0, "duration": 6.0,
"texture": ExtResource("1_a71jv") "texture": ExtResource("1_a71jv")
}, { }, {

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 B

View File

@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cbvf6bfjprl8t" uid="uid://cbjhwihdhavsu"
path="res://.godot/imported/e_大麻绳.png-2593412b4d7d996701d35cd83b392784.ctex" path="res://.godot/imported/0.png-6c7c96513589ebe485202b1c9ecdb9f5.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://asset/art/scene/c02/s09_裂缝/e_大麻绳.png" source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/0.png"
dest_files=["res://.godot/imported/e_大麻绳.png-2593412b4d7d996701d35cd83b392784.ctex"] dest_files=["res://.godot/imported/0.png-6c7c96513589ebe485202b1c9ecdb9f5.ctex"]
[params] [params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b7jlo0bith1vd"
path="res://.godot/imported/1.png-e2636b205caf249a0750248fb7568ecf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/1.png"
dest_files=["res://.godot/imported/1.png-e2636b205caf249a0750248fb7568ecf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://weutdv750wv8"
path="res://.godot/imported/2.png-fd75090538c084505b9ec7b87ffa7b82.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/2.png"
dest_files=["res://.godot/imported/2.png-fd75090538c084505b9ec7b87ffa7b82.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dwean2yri24xl"
path="res://.godot/imported/3.png-3aabd93dfc48466ef55ea15db08c7900.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/3.png"
dest_files=["res://.godot/imported/3.png-3aabd93dfc48466ef55ea15db08c7900.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 378 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rk47ys5r8atn"
path="res://.godot/imported/4.png-98f6ef604a52fc56c9733d7048d4f612.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/4.png"
dest_files=["res://.godot/imported/4.png-98f6ef604a52fc56c9733d7048d4f612.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 B

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://du8xuuoxdbj3r"
path="res://.godot/imported/5.png-61c4a9f852711fb1b1c42e5937ec0405.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c02_红色梦境/小嘴巴说话_改/5.png"
dest_files=["res://.godot/imported/5.png-61c4a9f852711fb1b1c42e5937ec0405.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b2jnocfgfr3io"
path="res://.godot/imported/小蝉人偶.png-d01d846aa3909e24e01d501192420f60.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/little_game/八音盒/小蝉人偶.png"
dest_files=["res://.godot/imported/小蝉人偶.png-d01d846aa3909e24e01d501192420f60.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://batgwvtgm7i75"
path="res://.godot/imported/弹珠.png-faa40c94ed3430f9dd29ec4756922368.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/little_game/八音盒/弹珠.png"
dest_files=["res://.godot/imported/弹珠.png-faa40c94ed3430f9dd29ec4756922368.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c07o1l2hs2ex5"
path="res://.godot/imported/新小猫身体.png-f5226334bb168c875c01e05f7c9cba47.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/little_game/八音盒/新小猫身体.png"
dest_files=["res://.godot/imported/新小猫身体.png-f5226334bb168c875c01e05f7c9cba47.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 162 B

View File

@ -45,31 +45,6 @@ c02_4瞎子_11,走吧。,方启钊,,
c02_11肉铺敲门_1_fx,理发二楼,看病三楼!,,, c02_11肉铺敲门_1_fx,理发二楼,看病三楼!,,,
c02_11肉铺敲门_2_fx,敲什么敲!,,, c02_11肉铺敲门_2_fx,敲什么敲!,,,
c02_11肉铺敲门_3_fx,不做生意赶紧滚!,,, c02_11肉铺敲门_3_fx,不做生意赶紧滚!,,,
c02_议论文字1,你刚刚说的是真的啊?,,,
c02_议论文字2,你听谁说的?,,,
c02_议论文字3,1015那个女的讲的,,,
c02_议论文字4,好多人都在传呢,,,
c02_议论文字5,我也听说了,,,
c02_议论文字6,不是有人已经看到过了吗,,,
c02_议论文字7,谁看到了?,,,
c02_议论文字8,谁啊,,,
c02_议论文字9,听说是她老公看到的呀,,,
c02_议论文字10,那还有这么多人找他们看过病呢,,,
c02_议论文字11,你十三点啊,,,
c02_议论文字12,谁知道这病是不是他们搞得,,,
c02_议论文字13,这钱不就来了吗,,,
c02_议论文字14,啧,有道理的呀,,,
c02_议论文字15,想钱想疯了,,,
c02_议论文字16,开始用怪路子赚钱了,,,
c02_议论文字17,你意思他们家住了只妖怪?,,,
c02_议论文字18,啊?妖怪?,,,
c02_议论文字19,你们在说什么妖怪?,,,
c02_议论文字20,谁家有妖怪?,,,
c02_议论文字21,啥妖怪,,,
c02_议论文字22,真的假的妖怪,,,
c02_议论文字23,3014那家有妖怪,,,
c02_议论文字24,要死了,,,
c02_议论文字25,养妖怪,,,
c02_5小男孩_1,大姐姐,等一下!你玩过打弹珠没有?,小男孩,, c02_5小男孩_1,大姐姐,等一下!你玩过打弹珠没有?,小男孩,,
c02_5小男孩_2,你赢了的话,我们就认你当老大,听你的吩咐办事!,小男孩,, c02_5小男孩_2,你赢了的话,我们就认你当老大,听你的吩咐办事!,小男孩,,
c02_5小男孩_3,你得有弹珠才能跟我们玩儿!,,, c02_5小男孩_3,你得有弹珠才能跟我们玩儿!,,,

1 keys zh_CN _character _notes _tags
45 c02_11肉铺敲门_1_fx 理发二楼,看病三楼! ???
46 c02_11肉铺敲门_2_fx 敲什么敲! ???
47 c02_11肉铺敲门_3_fx 不做生意赶紧滚! ???
c02_议论文字1 你刚刚说的是真的啊?
c02_议论文字2 你听谁说的?
c02_议论文字3 1015那个女的讲的
c02_议论文字4 好多人都在传呢
c02_议论文字5 我也听说了
c02_议论文字6 不是有人已经看到过了吗
c02_议论文字7 谁看到了?
c02_议论文字8 谁啊
c02_议论文字9 听说是她老公看到的呀
c02_议论文字10 那还有这么多人找他们看过病呢
c02_议论文字11 你十三点啊
c02_议论文字12 谁知道这病是不是他们搞得
c02_议论文字13 这钱不就来了吗
c02_议论文字14 啧,有道理的呀
c02_议论文字15 想钱想疯了
c02_议论文字16 开始用怪路子赚钱了
c02_议论文字17 你意思他们家住了只妖怪?
c02_议论文字18 啊?妖怪?
c02_议论文字19 你们在说什么妖怪?
c02_议论文字20 谁家有妖怪?
c02_议论文字21 啥妖怪
c02_议论文字22 真的假的妖怪
c02_议论文字23 3014那家有妖怪
c02_议论文字24 要死了
c02_议论文字25 养妖怪
48 c02_5小男孩_1 大姐姐,等一下!你玩过打弹珠没有? 小男孩
49 c02_5小男孩_2 你赢了的话,我们就认你当老大,听你的吩咐办事! 小男孩
50 c02_5小男孩_3 你得有弹珠才能跟我们玩儿!

View File

@ -55,33 +55,6 @@
: 不做生意赶紧滚! [ID:c02_11肉铺敲门_3_fx] : 不做生意赶紧滚! [ID:c02_11肉铺敲门_3_fx]
=> END => END
~ c02_裂缝议论
你刚刚说的是真的啊? [ID:c02_议论文字1]
你听谁说的? [ID:c02_议论文字2]
1015那个女的讲的 [ID:c02_议论文字3]
好多人都在传呢 [ID:c02_议论文字4]
我也听说了 [ID:c02_议论文字5]
不是有人已经看到过了吗 [ID:c02_议论文字6]
谁看到了? [ID:c02_议论文字7]
谁啊 [ID:c02_议论文字8]
听说是她老公看到的呀 [ID:c02_议论文字9]
那还有这么多人找他们看过病呢 [ID:c02_议论文字10]
你十三点啊 [ID:c02_议论文字11]
谁知道这病是不是他们搞得 [ID:c02_议论文字12]
这钱不就来了吗 [ID:c02_议论文字13]
啧,有道理的呀 [ID:c02_议论文字14]
想钱想疯了 [ID:c02_议论文字15]
开始用怪路子赚钱了 [ID:c02_议论文字16]
你意思他们家住了只妖怪? [ID:c02_议论文字17]
啊?妖怪? [ID:c02_议论文字18]
你们在说什么妖怪? [ID:c02_议论文字19]
谁家有妖怪? [ID:c02_议论文字20]
啥妖怪 [ID:c02_议论文字21]
真的假的妖怪 [ID:c02_议论文字22]
3014那家有妖怪 [ID:c02_议论文字23]
要死了 [ID:c02_议论文字24]
养妖怪 [ID:c02_议论文字25]
=> END
# 寻找弹珠 # 寻找弹珠
~ c02_s05_三男孩弹珠游戏1 ~ c02_s05_三男孩弹珠游戏1

View File

@ -0,0 +1,26 @@
keys,zh_CN,_character,_notes,_tags
c02_议论文字1,你说的是真的啊?,,,
c02_议论文字2,你听谁说的?,,,
c02_议论文字3,姓李的那个女人讲的,,,
c02_议论文字4,好多人都在传呢,,,
c02_议论文字5,我也听说了,,,
c02_议论文字6,不是有人已经看到过了吗,,,
c02_议论文字7,谁看到了?,,,
c02_议论文字8,谁啊,,,
c02_议论文字9,听说是她老公看到的呀,,,
c02_议论文字10,这么多人找他们看过病呢,,,
c02_议论文字11,你十三点啊,,,
c02_议论文字12,谁知道这病是不是他们搞得,,,
c02_议论文字13,这钱不就来了吗,,,
c02_议论文字14,啧,有道理的呀,,,
c02_议论文字15,想钱想疯了,,,
c02_议论文字16,开始用怪路子赚钱了,,,
c02_议论文字17,他们家住了只妖怪?,,,
c02_议论文字18,啊?妖怪?,,,
c02_议论文字19,你们在说什么妖怪?,,,
c02_议论文字20,谁家有妖怪?,,,
c02_议论文字21,啥妖怪,,,
c02_议论文字22,真的假的妖怪,,,
c02_议论文字23,3014那家有妖怪,,,
c02_议论文字24,要死了,,,
c02_议论文字25,养妖怪,,,
1 keys zh_CN _character _notes _tags
2 c02_议论文字1 你说的是真的啊?
3 c02_议论文字2 你听谁说的?
4 c02_议论文字3 姓李的那个女人讲的
5 c02_议论文字4 好多人都在传呢
6 c02_议论文字5 我也听说了
7 c02_议论文字6 不是有人已经看到过了吗
8 c02_议论文字7 谁看到了?
9 c02_议论文字8 谁啊
10 c02_议论文字9 听说是她老公看到的呀
11 c02_议论文字10 这么多人找他们看过病呢
12 c02_议论文字11 你十三点啊
13 c02_议论文字12 谁知道这病是不是他们搞得
14 c02_议论文字13 这钱不就来了吗
15 c02_议论文字14 啧,有道理的呀
16 c02_议论文字15 想钱想疯了
17 c02_议论文字16 开始用怪路子赚钱了
18 c02_议论文字17 他们家住了只妖怪?
19 c02_议论文字18 啊?妖怪?
20 c02_议论文字19 你们在说什么妖怪?
21 c02_议论文字20 谁家有妖怪?
22 c02_议论文字21 啥妖怪
23 c02_议论文字22 真的假的妖怪
24 c02_议论文字23 3014那家有妖怪
25 c02_议论文字24 要死了
26 c02_议论文字25 养妖怪

View File

@ -0,0 +1,17 @@
[remap]
importer="csv_translation"
type="Translation"
uid="uid://rlhjdcvlinvt"
[deps]
files=["res://asset/dialogue/纯中文_无需本地化.zh_CN.translation"]
source_file="res://asset/dialogue/纯中文_无需本地化.csv"
dest_files=["res://asset/dialogue/纯中文_无需本地化.zh_CN.translation"]
[params]
compress=true
delimiter=0

View File

@ -0,0 +1,27 @@
~ c02_裂缝议论
你说的是真的啊? [ID:c02_议论文字1]
你听谁说的? [ID:c02_议论文字2]
姓李的那个女人讲的 [ID:c02_议论文字3]
好多人都在传呢 [ID:c02_议论文字4]
我也听说了 [ID:c02_议论文字5]
不是有人已经看到过了吗 [ID:c02_议论文字6]
谁看到了? [ID:c02_议论文字7]
谁啊 [ID:c02_议论文字8]
听说是她老公看到的呀 [ID:c02_议论文字9]
这么多人找他们看过病呢 [ID:c02_议论文字10]
你十三点啊 [ID:c02_议论文字11]
谁知道这病是不是他们搞得 [ID:c02_议论文字12]
这钱不就来了吗 [ID:c02_议论文字13]
啧,有道理的呀 [ID:c02_议论文字14]
想钱想疯了 [ID:c02_议论文字15]
开始用怪路子赚钱了 [ID:c02_议论文字16]
他们家住了只妖怪? [ID:c02_议论文字17]
啊?妖怪? [ID:c02_议论文字18]
你们在说什么妖怪? [ID:c02_议论文字19]
谁家有妖怪? [ID:c02_议论文字20]
啥妖怪 [ID:c02_议论文字21]
真的假的妖怪 [ID:c02_议论文字22]
3014那家有妖怪 [ID:c02_议论文字23]
要死了 [ID:c02_议论文字24]
养妖怪 [ID:c02_议论文字25]
=> END

View File

@ -0,0 +1,16 @@
[remap]
importer="dialogue_manager"
importer_version=15
type="Resource"
uid="uid://cw6fqhsayj2mx"
path="res://.godot/imported/纯中文_无需本地化.dialogue-926494d2ab389072cb5bff08a3b44b6a.tres"
[deps]
source_file="res://asset/dialogue/纯中文_无需本地化.dialogue"
dest_files=["res://.godot/imported/纯中文_无需本地化.dialogue-926494d2ab389072cb5bff08a3b44b6a.tres"]
[params]
defaults=true

View File

@ -157,6 +157,13 @@ func get_current_prop(must_selected: bool) -> String:
return "" return ""
func has_prop(prop_key: String) -> bool:
var prop_hud = get_prop_hud()
if prop_hud:
return prop_hud.inventory.enabled_items.has(prop_key)
return false
# 静默增加 prop一般用于提前保存数据确保数据一致性防止在 await 时退出等导致丢数据) # 静默增加 prop一般用于提前保存数据确保数据一致性防止在 await 时退出等导致丢数据)
func enable_prop_item_silently(prop_key: String) -> void: func enable_prop_item_silently(prop_key: String) -> void:
var prop_hud = get_prop_hud() var prop_hud = get_prop_hud()
@ -292,8 +299,10 @@ func checkout_index_page(transition := true):
else: else:
_jump_back_to_index_and_quit_main() _jump_back_to_index_and_quit_main()
var packed_index_page := preload("res://scene/index_page.tscn") var packed_index_page := preload("res://scene/index_page.tscn")
func _jump_back_to_index_and_quit_main(): func _jump_back_to_index_and_quit_main():
# 技术问题DialogueManager 中 do SceneManager.checkout_index_page()时checkout scene 原本 /root/Main 节点未被删除 # 技术问题DialogueManager 中 do SceneManager.checkout_index_page()时checkout scene 原本 /root/Main 节点未被删除
# * 原本除 standalone 的节点外,只有 /root/Main current_scene # * 原本除 standalone 的节点外,只有 /root/Main current_scene

View File

@ -181,8 +181,8 @@ space={
[internationalization] [internationalization]
locale/translations=PackedStringArray("res://asset/dialogue/c01.zh_CN.translation", "res://asset/dialogue/c02.zh_CN.translation", "res://asset/dialogue/inspect_content.zh_CN.translation", "res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/names.zh_CN.translation", "res://asset/dialogue/npc.zh_CN.translation", "res://asset/dialogue/c01.zh_SH.translation") locale/translations=PackedStringArray("res://asset/dialogue/c01.zh_CN.translation", "res://asset/dialogue/c02.zh_CN.translation", "res://asset/dialogue/inspect_content.zh_CN.translation", "res://asset/dialogue/item_description.zh_CN.translation", "res://asset/dialogue/names.zh_CN.translation", "res://asset/dialogue/npc.zh_CN.translation", "res://asset/dialogue/c01.zh_SH.translation", "res://asset/dialogue/纯中文_无需本地化.zh_CN.translation")
locale/translations_pot_files=PackedStringArray("res://asset/dialogue/item_description.dialogue", "res://asset/dialogue/c01.dialogue", "res://asset/dialogue/c02.dialogue", "res://asset/dialogue/inspect_content.dialogue", "res://asset/dialogue/npc.dialogue", "res://asset/dialogue/c03.dialogue", "res://asset/dialogue/c04.dialogue", "res://asset/dialogue/c05.dialogue", "res://asset/dialogue/c06.dialogue") locale/translations_pot_files=PackedStringArray("res://asset/dialogue/item_description.dialogue", "res://asset/dialogue/c01.dialogue", "res://asset/dialogue/c02.dialogue", "res://asset/dialogue/inspect_content.dialogue", "res://asset/dialogue/npc.dialogue", "res://asset/dialogue/c03.dialogue", "res://asset/dialogue/c04.dialogue", "res://asset/dialogue/c05.dialogue", "res://asset/dialogue/c06.dialogue", "res://asset/dialogue/纯中文_无需本地化.dialogue")
locale/test="zh-Hans" locale/test="zh-Hans"
locale/fallback="zh" locale/fallback="zh"

View File

@ -109,32 +109,32 @@ color_ramp = SubResource("GradientTexture1D_5cty7")
[node name="white" type="GPUParticles2D" parent="."] [node name="white" type="GPUParticles2D" parent="."]
amount = 150 amount = 150
process_material = SubResource("ParticleProcessMaterial_44bc2")
texture = ExtResource("1_lv5jb") texture = ExtResource("1_lv5jb")
lifetime = 200.0 lifetime = 200.0
preprocess = 100.0 preprocess = 100.0
speed_scale = 2.0 speed_scale = 3.0
visibility_rect = Rect2(0, -130, -5000, 260) visibility_rect = Rect2(0, -130, -5000, 260)
trail_sections = 16 trail_sections = 16
process_material = SubResource("ParticleProcessMaterial_44bc2")
metadata/_edit_vertical_guides_ = [-721.0] metadata/_edit_vertical_guides_ = [-721.0]
[node name="grey" type="GPUParticles2D" parent="."] [node name="grey" type="GPUParticles2D" parent="."]
amount = 200 amount = 200
process_material = SubResource("ParticleProcessMaterial_3xiox")
texture = ExtResource("2_wgqpb") texture = ExtResource("2_wgqpb")
lifetime = 200.0 lifetime = 200.0
preprocess = 100.0 preprocess = 100.0
speed_scale = 2.0 speed_scale = 3.0
visibility_rect = Rect2(0, -130, -5000, 260) visibility_rect = Rect2(0, -130, -5000, 260)
trail_sections = 16 trail_sections = 16
process_material = SubResource("ParticleProcessMaterial_3xiox")
[node name="black" type="GPUParticles2D" parent="."] [node name="black" type="GPUParticles2D" parent="."]
amount = 180 amount = 180
process_material = SubResource("ParticleProcessMaterial_wa8gc")
texture = ExtResource("3_abc1v") texture = ExtResource("3_abc1v")
lifetime = 200.0 lifetime = 200.0
preprocess = 100.0 preprocess = 100.0
speed_scale = 2.0 speed_scale = 3.0
visibility_rect = Rect2(0, -130, -5000, 260) visibility_rect = Rect2(0, -130, -5000, 260)
trail_enabled = true trail_enabled = true
trail_sections = 16 trail_sections = 16
process_material = SubResource("ParticleProcessMaterial_wa8gc")

View File

@ -24,6 +24,7 @@ mouse_filter = 2
[node name="Sprite2D" type="Sprite2D" parent="TextureContainer"] [node name="Sprite2D" type="Sprite2D" parent="TextureContainer"]
unique_name_in_owner = true unique_name_in_owner = true
light_mask = 16 light_mask = 16
z_index = 100
position = Vector2(3.8147e-06, 3.8147e-06) position = Vector2(3.8147e-06, 3.8147e-06)
scale = Vector2(0.1, 0.1) scale = Vector2(0.1, 0.1)
texture = ExtResource("2_y564w") texture = ExtResource("2_y564w")

View File

@ -13,7 +13,14 @@ func _ready() -> void:
return return
var eye_light
var eye_light_energy
func _on_ground_ready() -> void: func _on_ground_ready() -> void:
eye_light = $"../AmbientLayer/PointLight2D眼睛打光"
eye_light_energy = eye_light.energy
eye_light.energy = 0
var counter = $"../DeployLayer/空房间残留物/柜子" var counter = $"../DeployLayer/空房间残留物/柜子"
# counter 默认在 s10 中 x 为 364.0 # counter 默认在 s10 中 x 为 364.0
if ArchiveManager.get_global_value("c02_counter_pushed_out"): if ArchiveManager.get_global_value("c02_counter_pushed_out"):
@ -47,7 +54,7 @@ var bgm_switched := false
# 开始眨眼的 x # 开始眨眼的 x
var blink_eye_x := 1700 var blink_eye_x := 1700
# 开始切换 bgm 的 x # 开始切换 bgm 的 x
var switch_bgm_x := 3300 var switch_bgm_x := 3100
func _on_player_position_updated(global_pos: Vector2) -> void: func _on_player_position_updated(global_pos: Vector2) -> void:
@ -66,16 +73,20 @@ func _on_player_position_updated(global_pos: Vector2) -> void:
if x < rope_range.x or x > rope_range.y: if x < rope_range.x or x > rope_range.y:
return return
var ratio = (x - rope_range.x) / rope_length var ratio = (x - rope_range.x) / rope_length
# 限制 bulge 最大范围 var height = 0.2
ratio = clampf(ratio, 0.0, 0.8) # 左右侧逐渐不再抬起麻绳
# 右侧逐渐不再抬起麻绳 if ratio < 0.3:
var height = 0.2 * smoothstep(0.0, 0.3, ratio) height *= smoothstep(0.0, 0.3, ratio)
elif ratio > 0.7:
height *= 1 - smoothstep(0.8, 0.95, ratio)
rope.set_bulge(ratio, height) rope.set_bulge(ratio, height)
func _start_blinking(): func _start_blinking():
var tween = create_tween() var tween = create_tween()
tween.tween_callback(_blink_eye) tween.tween_callback(_blink_eye)
tween.tween_property(eye_light, "energy", 0, 0.1)
tween.tween_property(eye_light, "energy", eye_light_energy, 0.2)
tween.tween_interval(3.5) tween.tween_interval(3.5)
tween.set_loops(10000) tween.set_loops(10000)

File diff suppressed because one or more lines are too long

View File

@ -28,6 +28,7 @@ var catty_head: Pickable2D
var door: Portal2D var door: Portal2D
var portal: Portal2D var portal: Portal2D
func _on_ground_ready() -> void: func _on_ground_ready() -> void:
xiao_chan_sprite = $"../DeployLayer/大头小蝉" xiao_chan_sprite = $"../DeployLayer/大头小蝉"
xiao_chan_interactable = $"../DeployLayer/Interactable小蝉" xiao_chan_interactable = $"../DeployLayer/Interactable小蝉"
@ -40,7 +41,7 @@ func _on_ground_ready() -> void:
# 进过瞎子卧室后,通道关闭 # 进过瞎子卧室后,通道关闭
if ArchiveManager.get_global_value("c02_the_blind_room_unlocked"): if ArchiveManager.get_global_value("c02_the_blind_room_unlocked"):
# 遮挡的空房间 # 遮挡的空房间
$"../BGSprite2D".texture = preload("uid://ba57knu57jp3u") $"../BGSprite2D".texture = preload("uid://ba57knu57jp3u")
door.before_pre_transport_wait.connect(_on_leave_room) door.before_pre_transport_wait.connect(_on_leave_room)
@ -175,19 +176,19 @@ func after_counter_moved():
func _on_pick_catty_head() -> void: func _on_pick_catty_head() -> void:
if SceneManager.has_prop("prop_无头小猫玩具"):
var inspector = SceneManager.get_inspector()
await inspector.quit_and_hidden
# 将小猫头与身子合并
SceneManager.disable_prop_item("prop_小猫玩具的脑袋")
SceneManager.disable_prop_item("prop_无头小猫玩具")
SceneManager.enable_prop_item_silently("prop_小猫玩具完整")
var sprite = $"../DeployLayer/拼接小猫玩具"
sprite.visible = true
sprite.play()
await sprite.animation_finished
sprite.visible = false
SceneManager.enable_prop_item("prop_小猫玩具完整")
# 进过瞎子卧室后,通道关闭 # 进过瞎子卧室后,通道关闭
var entered = ArchiveManager.get_global_value("c02_the_blind_room_unlocked", false) if not ArchiveManager.get_global_value("c02_the_blind_room_unlocked"):
if not entered and catty_head.picked:
portal.enabled = true portal.enabled = true
var inspector = SceneManager.get_inspector()
await inspector.quit_and_hidden
# 将小猫头与身子合并
SceneManager.disable_prop_item("prop_小猫玩具的脑袋")
SceneManager.disable_prop_item("prop_无头小猫玩具")
SceneManager.enable_prop_item_silently("prop_小猫玩具完整")
var sprite = $"../DeployLayer/拼接小猫玩具"
sprite.visible = true
sprite.play()
await sprite.animation_finished
sprite.visible = false
SceneManager.enable_prop_item("prop_小猫玩具完整")

View File

@ -194,12 +194,24 @@ mute_when_interacted = false
visible = false visible = false
light_mask = 32 light_mask = 32
z_index = 10 z_index = 10
position = Vector2(291, -7.15256e-07) position = Vector2(282, -7.15256e-07)
sprite_frames = ExtResource("15_2j5dr") sprite_frames = ExtResource("15_2j5dr")
animation = &"小猫玩具合并动画" animation = &"小猫玩具合并动画"
[node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/拼接小猫玩具"] [node name="Sprite2D" type="TextureRect" parent="Ground/DeployLayer/拼接小猫玩具"]
show_behind_parent = true show_behind_parent = true
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -339.5
offset_top = -171.5
offset_right = 224.5
offset_bottom = 68.5
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 0
texture = ExtResource("14_e24j0") texture = ExtResource("14_e24j0")
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/拼接小猫玩具"] [node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/拼接小猫玩具"]

View File

@ -0,0 +1,10 @@
extends Sprite2D
func _ready() -> void:
var y = position.y
var tween = create_tween()
# y 负轴为向上
tween.tween_property(self, "position:y", y - 10.0, 3.0).set_ease(Tween.EASE_IN_OUT)
tween.tween_property(self, "position:y", y, 1.0).set_ease(Tween.EASE_IN_OUT)
tween.set_loops(1000000)

View File

@ -0,0 +1 @@
uid://cuh2rwewoav3n

View File

@ -1,9 +1,8 @@
[gd_scene load_steps=6 format=3 uid="uid://cl64mhryf4wkx"] [gd_scene load_steps=5 format=3 uid="uid://cl64mhryf4wkx"]
[ext_resource type="SpriteFrames" uid="uid://ckpe1xevbgr6h" path="res://asset/art/gif/c02_裂缝过道/c02_裂缝过道_frames.tres" id="1_5qtbw"] [ext_resource type="SpriteFrames" uid="uid://ckpe1xevbgr6h" path="res://asset/art/gif/c02_裂缝过道/c02_裂缝过道_frames.tres" id="1_5qtbw"]
[ext_resource type="Script" uid="uid://bibfu8acvmifc" path="res://scene/ground/script/c02/裂缝坍塌.gd" id="2_ctxbt"] [ext_resource type="Script" uid="uid://bibfu8acvmifc" path="res://scene/ground/script/c02/裂缝坍塌.gd" id="2_ctxbt"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/general/sfx.gd" id="3_fbmk8"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/general/sfx.gd" id="3_fbmk8"]
[ext_resource type="AudioStream" uid="uid://c26x8f18w6is0" path="res://asset/audio/sfx/旧版/c02/撞到柜子.mp3" id="3_sn20u"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_sn20u"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_sn20u"]
size = Vector2(300, 20) size = Vector2(300, 20)
@ -14,7 +13,6 @@ animation = &"石头下坠"
script = ExtResource("2_ctxbt") script = ExtResource("2_ctxbt")
[node name="Sfx坍塌" type="AudioStreamPlayer" parent="."] [node name="Sfx坍塌" type="AudioStreamPlayer" parent="."]
stream = ExtResource("3_sn20u")
bus = &"game_sfx" bus = &"game_sfx"
script = ExtResource("3_fbmk8") script = ExtResource("3_fbmk8")
metadata/_custom_type_script = "uid://rq6w1vuhuq1m" metadata/_custom_type_script = "uid://rq6w1vuhuq1m"

View File

@ -30,10 +30,10 @@ func _on_area_entered(_body):
label.visible = true label.visible = true
await get_tree().create_timer(randf()).timeout await get_tree().create_timer(randf()).timeout
var tween = create_tween() var tween = create_tween()
tween.tween_property(label, "position:y", 3.0, 0.5).set_trans(Tween.TRANS_BOUNCE) tween.tween_property(label, "position:y", 3.0, 0.6).set_trans(Tween.TRANS_BOUNCE)
tween.tween_property(label, "position:y", 0.0, 0.5).set_trans(Tween.TRANS_BOUNCE) tween.tween_property(label, "position:y", 0.0, 0.6).set_trans(Tween.TRANS_BOUNCE)
tween.set_loops(1000000) tween.set_loops(10)
create_tween().tween_property(label, "modulate:a", 0.0, 8.0)
func _update_text(): func _update_text():
label.text = "[pulse ease=2.0 freq=2 color=#000000cf] " + tr(key) label.text = "[pulse ease=2.0 freq=2 color=#000000cf] " + tr(key)

View File

@ -1,7 +1,7 @@
[gd_scene load_steps=4 format=3 uid="uid://bovwtd8gvrxs"] [gd_scene load_steps=4 format=3 uid="uid://bovwtd8gvrxs"]
[ext_resource type="Script" uid="uid://c82oetmqdb5gy" path="res://scene/ground/script/c02/裂缝议论文字.gd" id="1_ohemw"] [ext_resource type="Script" uid="uid://c82oetmqdb5gy" path="res://scene/ground/script/c02/裂缝议论文字.gd" id="1_ohemw"]
[ext_resource type="FontVariation" uid="uid://1ryw42kej6lv" path="res://config/font_ui.tres" id="2_5tnwy"] [ext_resource type="FontFile" uid="uid://bm1jyuaffxuw2" path="res://asset/font/Aa像素山海_mianfeiziti.com.ttf" id="2_5tnwy"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3e8ff"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_3e8ff"]
size = Vector2(300, 100) size = Vector2(300, 100)

View File

@ -138,6 +138,8 @@ func _on_prop_picked(node: Draggable2D, archive_key: String):
# await tween.finished # await tween.finished
node.queue_free() node.queue_free()
SceneManager.enable_prop_item(key) SceneManager.enable_prop_item(key)
if key == "prop_无头小猫玩具":
_on_pick_catty()
ArchiveManager.set_global_entry("c02_musicbox_" + archive_key + "_taken", true) ArchiveManager.set_global_entry("c02_musicbox_" + archive_key + "_taken", true)
@ -321,3 +323,20 @@ func _unhandled_input(event: InputEvent) -> void:
elif event.is_action_pressed("escape"): elif event.is_action_pressed("escape"):
get_viewport().set_input_as_handled() get_viewport().set_input_as_handled()
exit.emit(false) exit.emit(false)
func _on_pick_catty():
if not SceneManager.has_prop("prop_小猫玩具的脑袋"):
return
var inspector = SceneManager.get_inspector()
# 将小猫头与身子合并
SceneManager.disable_prop_item("prop_小猫玩具的脑袋")
SceneManager.disable_prop_item("prop_无头小猫玩具")
SceneManager.enable_prop_item_silently("prop_小猫玩具完整")
await inspector.quit_and_hidden
var sprite = $"拼接小猫玩具"
sprite.visible = true
sprite.play()
await sprite.animation_finished
sprite.visible = false
SceneManager.enable_prop_item("prop_小猫玩具完整")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=51 format=3 uid="uid://beleib3mmu0af"] [gd_scene load_steps=54 format=3 uid="uid://beleib3mmu0af"]
[ext_resource type="Texture2D" uid="uid://2xbl572hv2qf" path="res://asset/art/little_game/八音盒/背景.png" id="1_j0wst"] [ext_resource type="Texture2D" uid="uid://2xbl572hv2qf" path="res://asset/art/little_game/八音盒/背景.png" id="1_j0wst"]
[ext_resource type="Script" uid="uid://bian8ga7cet8k" path="res://scene/little_game/八音盒/八音盒.gd" id="2_opptd"] [ext_resource type="Script" uid="uid://bian8ga7cet8k" path="res://scene/little_game/八音盒/八音盒.gd" id="2_opptd"]
@ -30,9 +30,12 @@
[ext_resource type="Texture2D" uid="uid://c12336ikmvq2q" path="res://asset/art/little_game/八音盒/新版贴图/八音盒底碎裂.png" id="24_rriyt"] [ext_resource type="Texture2D" uid="uid://c12336ikmvq2q" path="res://asset/art/little_game/八音盒/新版贴图/八音盒底碎裂.png" id="24_rriyt"]
[ext_resource type="Texture2D" uid="uid://b3f37ak7b0o5h" path="res://asset/art/little_game/八音盒/新版贴图/八音盒抽屉盖.png" id="28_b3w8p"] [ext_resource type="Texture2D" uid="uid://b3f37ak7b0o5h" path="res://asset/art/little_game/八音盒/新版贴图/八音盒抽屉盖.png" id="28_b3w8p"]
[ext_resource type="Texture2D" uid="uid://dwcwc4epf2233" path="res://asset/art/little_game/八音盒/新版贴图/八音盒暗格背景.png" id="29_hder7"] [ext_resource type="Texture2D" uid="uid://dwcwc4epf2233" path="res://asset/art/little_game/八音盒/新版贴图/八音盒暗格背景.png" id="29_hder7"]
[ext_resource type="Texture2D" uid="uid://063cubb2b5in" path="res://asset/art/prop/c02/弹珠.png" id="30_b3w8p"] [ext_resource type="Texture2D" uid="uid://batgwvtgm7i75" path="res://asset/art/little_game/八音盒/弹珠.png" id="30_tgpfj"]
[ext_resource type="Texture2D" uid="uid://lk4warbvclhr" path="res://asset/art/prop/c02/新小猫身体.png" id="31_hder7"] [ext_resource type="Texture2D" uid="uid://c07o1l2hs2ex5" path="res://asset/art/little_game/八音盒/新小猫身体.png" id="31_wq2wm"]
[ext_resource type="Texture2D" uid="uid://cdsq0ylmgtfq0" path="res://asset/art/prop/c02/小蝉人偶.png" id="32_tgpfj"] [ext_resource type="Texture2D" uid="uid://b2jnocfgfr3io" path="res://asset/art/little_game/八音盒/小蝉人偶.png" id="32_sg8mt"]
[ext_resource type="SpriteFrames" uid="uid://cwes55ajc3rd4" path="res://asset/art/gif/c02_空房间/c02_空房间_frames.tres" id="34_tgpfj"]
[ext_resource type="Texture2D" uid="uid://f186lvt5y2ql" path="res://asset/art/ui/prop/inspect背景遮罩.png" id="35_wq2wm"]
[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="36_sg8mt"]
[sub_resource type="Animation" id="Animation_j1llk"] [sub_resource type="Animation" id="Animation_j1llk"]
length = 0.001 length = 0.001
@ -323,7 +326,6 @@ rotation = -0.234631
shape = SubResource("RectangleShape2D_04cdl") shape = SubResource("RectangleShape2D_04cdl")
[node name="Drawer" type="Node2D" parent="All"] [node name="Drawer" type="Node2D" parent="All"]
visible = false
position = Vector2(20.5, 0) position = Vector2(20.5, 0)
[node name="BoxDrawer" type="Sprite2D" parent="All/Drawer"] [node name="BoxDrawer" type="Sprite2D" parent="All/Drawer"]
@ -332,11 +334,10 @@ texture = ExtResource("29_hder7")
centered = false centered = false
[node name="Draggable1" parent="All/Drawer" instance=ExtResource("16_h88gi")] [node name="Draggable1" parent="All/Drawer" instance=ExtResource("16_h88gi")]
position = Vector2(125.5, 132) position = Vector2(128.5, 135)
scale = Vector2(0.869345, 0.894156)
act_as_button = true act_as_button = true
item_name = "prop_弹珠" item_name = "prop_弹珠"
texture = ExtResource("30_b3w8p") texture = ExtResource("30_tgpfj")
limit_rect = Rect2(150, 150, 220, 70) limit_rect = Rect2(150, 150, 220, 70)
[node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable1"] [node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable1"]
@ -344,29 +345,29 @@ position = Vector2(-1.15028, -1.11837)
shape = SubResource("CircleShape2D_wq2wm") shape = SubResource("CircleShape2D_wq2wm")
[node name="Draggable2" parent="All/Drawer" instance=ExtResource("16_h88gi")] [node name="Draggable2" parent="All/Drawer" instance=ExtResource("16_h88gi")]
position = Vector2(230.5, 160) position = Vector2(249.5, 143)
rotation = -0.254158 rotation = -0.254158
scale = Vector2(3.5, 3.5)
act_as_button = true act_as_button = true
item_name = "prop_无头小猫玩具" item_name = "prop_无头小猫玩具"
texture = ExtResource("31_hder7") texture = ExtResource("31_wq2wm")
limit_rect = Rect2(150, 150, 220, 70) limit_rect = Rect2(150, 150, 220, 70)
[node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable2"] [node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable2"]
position = Vector2(3.13613, 1.84788) position = Vector2(-2.01144, 7.74298)
scale = Vector2(3.06142, 3.16563)
shape = SubResource("RectangleShape2D_sg8mt") shape = SubResource("RectangleShape2D_sg8mt")
[node name="Draggable3" parent="All/Drawer" instance=ExtResource("16_h88gi")] [node name="Draggable3" parent="All/Drawer" instance=ExtResource("16_h88gi")]
position = Vector2(362.5, 175) position = Vector2(368.5, 175)
rotation = 0.330288 rotation = 0.330288
scale = Vector2(1.5, 1.5)
act_as_button = true act_as_button = true
item_name = "prop_木头人偶" item_name = "prop_木头人偶"
texture = ExtResource("32_tgpfj") texture = ExtResource("32_sg8mt")
limit_rect = Rect2(150, 150, 220, 70) limit_rect = Rect2(150, 150, 220, 70)
[node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable3"] [node name="CollisionShape2D" type="CollisionShape2D" parent="All/Drawer/Draggable3"]
position = Vector2(5.06722, 0.31792) position = Vector2(-0.621627, 1.27025)
scale = Vector2(1.22064, 1.29461)
shape = SubResource("RectangleShape2D_0kog4") shape = SubResource("RectangleShape2D_0kog4")
[node name="BoxAnimation" type="AnimatedSprite2D" parent="All"] [node name="BoxAnimation" type="AnimatedSprite2D" parent="All"]
@ -374,3 +375,32 @@ visible = false
position = Vector2(302.5, 249) position = Vector2(302.5, 249)
sprite_frames = ExtResource("16_50eha") sprite_frames = ExtResource("16_50eha")
animation = &"抽屉动画" animation = &"抽屉动画"
[node name="拼接小猫玩具" type="AnimatedSprite2D" parent="."]
visible = false
light_mask = 32
z_index = 10
position = Vector2(282, 158)
sprite_frames = ExtResource("34_tgpfj")
animation = &"小猫玩具合并动画"
[node name="BG" type="TextureRect" parent="拼接小猫玩具"]
show_behind_parent = true
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -339.5
offset_top = -171.5
offset_right = 224.5
offset_bottom = 68.5
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 0
texture = ExtResource("35_wq2wm")
[node name="PointLight2D" type="PointLight2D" parent="拼接小猫玩具"]
position = Vector2(3, -0.98594)
range_item_cull_mask = 32
texture = ExtResource("36_sg8mt")

View File

@ -156,7 +156,7 @@ func _play_animation() -> void:
sprite.offset = current_animation_config["foot_offset"] sprite.offset = current_animation_config["foot_offset"]
sprite.scale = current_animation_config["scale"] sprite.scale = current_animation_config["scale"]
# reset the os label position on animation changed. # reset the os label position on animation changed.
_reset_os_and_shadow_position() _reset_os_and_light_position()
# 检查动画基础偏移 # 检查动画基础偏移
check_foot_offset() check_foot_offset()
# 进一步偏移+播放动画 # 进一步偏移+播放动画
@ -364,13 +364,15 @@ func set_facing_direction(direction: Vector2) -> void:
# animation_shadow_polygons[animation] = coords_dict # animation_shadow_polygons[animation] = coords_dict
func _reset_os_and_shadow_position(): func _reset_os_and_light_position():
if sprite and sprite.animation: if sprite and sprite.animation:
# reset the os label position # reset the os label position
# var texture = sprite.sprite_frames.get_frame_texture(sprite.animation, 0) as Texture2D # var texture = sprite.sprite_frames.get_frame_texture(sprite.animation, 0) as Texture2D
# var size = texture.get_size() # var size = texture.get_size()
# os_pivot.position.y = -size.y * 0.5 * sprite.scale.x # os_pivot.position.y = -size.y * 0.5 * sprite.scale.x
os_pivot.position.y = -abs(current_animation_config["os_height"]) os_pivot.position.y = -abs(current_animation_config["os_height"])
light.position.y = -abs(current_animation_config["light_height"])
catty_light.position.y = -abs(current_animation_config["light_height"])
# reset the shadow position # reset the shadow position
# shadow_y = size.y * 0.5 # shadow_y = size.y * 0.5

View File

@ -21,6 +21,7 @@ var ANIMATION_CONFIG = {
"run_footstep": 7.0 / 10.0 / 2.0, "run_footstep": 7.0 / 10.0 / 2.0,
# 内心 os 时dialogue 的高度 # 内心 os 时dialogue 的高度
"os_height": 120.0, "os_height": 120.0,
"light_height": 60.0,
# 人物脚底 offset吕萍为 0高 200px足底在 100px 处 # 人物脚底 offset吕萍为 0高 200px足底在 100px 处
"foot_offset": Vector2(0, -100), "foot_offset": Vector2(0, -100),
MOVEMENT_IDLE: [&"c00_吕萍_idle_left", &"c00_吕萍_idle_right"], MOVEMENT_IDLE: [&"c00_吕萍_idle_left", &"c00_吕萍_idle_right"],
@ -54,6 +55,7 @@ var ANIMATION_CONFIG = {
"walk_footstep": 0.7, "walk_footstep": 0.7,
"run_footstep": 0.7, "run_footstep": 0.7,
"os_height": 50.0, "os_height": 50.0,
"light_height": 20.0,
# 人物脚底 offset吕萍为 0高 200px足底在 100px 处 # 人物脚底 offset吕萍为 0高 200px足底在 100px 处
# 吕萍爬行高 59px # 吕萍爬行高 59px
"foot_offset": Vector2(0, -23.5), "foot_offset": Vector2(0, -23.5),
@ -71,6 +73,7 @@ var ANIMATION_CONFIG = {
"walk_footstep": 0.5, "walk_footstep": 0.5,
"run_footstep": 0.5, "run_footstep": 0.5,
"os_height": 120.0, "os_height": 120.0,
"light_height": 60.0,
# 人物脚底 offset吕萍为 0高 200px足底在 100px 处 # 人物脚底 offset吕萍为 0高 200px足底在 100px 处
"foot_offset": Vector2(0, -100), "foot_offset": Vector2(0, -100),
MOVEMENT_IDLE: [&"c00_吕萍带小猫_idle_left", &"c00_吕萍带小猫_idle_right"], MOVEMENT_IDLE: [&"c00_吕萍带小猫_idle_left", &"c00_吕萍带小猫_idle_right"],
@ -86,6 +89,7 @@ var ANIMATION_CONFIG = {
"walk_footstep": 0.5, "walk_footstep": 0.5,
"run_footstep": 0.5, "run_footstep": 0.5,
"os_height": 120.0, "os_height": 120.0,
"light_height": 65.0,
# 人物脚底 offset吕萍为 0高 200px足底在 100px 处 # 人物脚底 offset吕萍为 0高 200px足底在 100px 处
"foot_offset": Vector2(22.5, -101), "foot_offset": Vector2(22.5, -101),
MOVEMENT_IDLE: [&"c00_吕萍_拉箱子呼吸_镜像", &"c00_吕萍_拉箱子呼吸_镜像"], MOVEMENT_IDLE: [&"c00_吕萍_拉箱子呼吸_镜像", &"c00_吕萍_拉箱子呼吸_镜像"],
@ -115,6 +119,7 @@ var ANIMATION_CONFIG = {
"walk_footstep": 0.5, "walk_footstep": 0.5,
"run_footstep": 7.0 / 10.0 / 2.0, "run_footstep": 7.0 / 10.0 / 2.0,
"os_height": 70.0, "os_height": 70.0,
"light_height": 40.0,
# 如果使用 auto就会自动以最低点为基准 # 如果使用 auto就会自动以最低点为基准
# "auto_foot_offset": true, # "auto_foot_offset": true,
# 人物脚底 offset吕萍为 0高 200px足底在 100px 处 # 人物脚底 offset吕萍为 0高 200px足底在 100px 处
@ -145,6 +150,7 @@ var ANIMATION_CONFIG = {
"walk_footstep": 0.5, "walk_footstep": 0.5,
"run_footstep": 7.0 / 10.0 / 2.0, "run_footstep": 7.0 / 10.0 / 2.0,
"os_height": 70.0, "os_height": 70.0,
"light_height": 20.0,
# 如果使用 auto就会自动以最低点为基准 # 如果使用 auto就会自动以最低点为基准
# "auto_foot_offset": true, # "auto_foot_offset": true,
"foot_offset": Vector2(0, -68.0), "foot_offset": Vector2(0, -68.0),

View File

@ -140,7 +140,7 @@ func pop_prop_inspection(prop_key: String, cover_texture: Texture2D, use_default
var balloon = preload("res://scene/dialog/balloon.tscn").instantiate() var balloon = preload("res://scene/dialog/balloon.tscn").instantiate()
# # 手动跳过的同时显示下一句 # # 手动跳过的同时显示下一句
DialogueManager.show_dialogue_balloon_scene(balloon, prop_res, "title") DialogueManager.show_dialogue_balloon_scene(balloon, prop_res, "title")
DialogueManager.dialogue_ended.connect(_on_inspecting_prop_words_ended) DialogueManager.dialogue_ended.connect(_on_inspecting_prop_words_ended, CONNECT_ONE_SHOT)
SceneManager.freeze_player(0) SceneManager.freeze_player(0)