鬼打墙素材更新

This commit is contained in:
cakipaul 2025-09-05 16:35:57 +08:00
parent d62879317d
commit 8425b5c25c
19 changed files with 391 additions and 28 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://btrjkyaawjxvb"
path="res://.godot/imported/纸人1.png-af270803ec9e684e53318a2492c0b62b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c04_鬼打墙/纸人1.png"
dest_files=["res://.godot/imported/纸人1.png-af270803ec9e684e53318a2492c0b62b.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: 27 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ck10sjhjvr4wg"
path="res://.godot/imported/纸人2.png-ee48dd6e272be502becc7bd269719ba4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c04_鬼打墙/纸人2.png"
dest_files=["res://.godot/imported/纸人2.png-ee48dd6e272be502becc7bd269719ba4.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: 56 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b35bkbimiepl1"
path="res://.godot/imported/鬼打墙三扇门.png-addbb0fff0b6d9e21033f2ad626a37cc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/gif/c04_鬼打墙/鬼打墙三扇门.png"
dest_files=["res://.godot/imported/鬼打墙三扇门.png-addbb0fff0b6d9e21033f2ad626a37cc.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: 5.8 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cmysdmebk0b6e"
path="res://.godot/imported/1-是谁找我.png-4d2fe1cb170911c401c520bb83fbd2e4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/scene/c04/s06_小蝶房间/日记妖回答拆字/1-是谁找我.png"
dest_files=["res://.godot/imported/1-是谁找我.png-4d2fe1cb170911c401c520bb83fbd2e4.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: 7.3 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c503seuxk6l66"
path="res://.godot/imported/2-我不认识你.png-7bdc223968fe52bc30c15b2042a69cf6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/scene/c04/s06_小蝶房间/日记妖回答拆字/2-我不认识你.png"
dest_files=["res://.godot/imported/2-我不认识你.png-7bdc223968fe52bc30c15b2042a69cf6.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: 8.6 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://o2rg4lmnkrwf"
path="res://.godot/imported/3-我不想和人说话.png-10c669a6d431fa3baddde01521372eb3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/scene/c04/s06_小蝶房间/日记妖回答拆字/3-我不想和人说话.png"
dest_files=["res://.godot/imported/3-我不想和人说话.png-10c669a6d431fa3baddde01521372eb3.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://culmi3ok4n1h"
path="res://.godot/imported/4-别烦我.png-224f5e8fd13c87fda7a9cbbb223f75e3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://asset/art/scene/c04/s06_小蝶房间/日记妖回答拆字/4-别烦我.png"
dest_files=["res://.godot/imported/4-别烦我.png-224f5e8fd13c87fda7a9cbbb223f75e3.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

View File

@ -46,6 +46,8 @@ c03_intro_c04: 0:初始化 1:演出完成
~ EventStage_c04 ~ EventStage_c04
# 小蝶家门口,陆蝶演出&鬼打墙 # 小蝶家门口,陆蝶演出&鬼打墙
c04_ghost_trapped: 0:初始化 1:第一次开门 2:进入鬼打墙场景 3:鬼打墙结束 4:排队纸人歪头 c04_ghost_trapped: 0:初始化 1:第一次开门 2:进入鬼打墙场景 3:鬼打墙结束 4:排队纸人歪头
# 木头人游戏
c04_puppet_game: 0:初始化 1:开始游戏 2:游戏胜利
# 除晦游戏 # 除晦游戏
c04_erase_curse: 0:初始化 1:开始游戏 2:游戏结束 c04_erase_curse: 0:初始化 1:开始游戏 2:游戏结束
# 煮肉游戏 # 煮肉游戏

View File

@ -4,9 +4,9 @@
[ext_resource type="Script" uid="uid://dxu4ss0r68f5d" path="res://scene/ground/scene/c04/s04_鬼打墙.gd" id="2_vek4i"] [ext_resource type="Script" uid="uid://dxu4ss0r68f5d" path="res://scene/ground/scene/c04/s04_鬼打墙.gd" id="2_vek4i"]
[ext_resource type="AudioStream" uid="uid://6oc0cgc3mbqb" path="res://asset/audio/sfx/环境音/白噪音/白噪声楼道2.ogg" id="3_ka5ik"] [ext_resource type="AudioStream" uid="uid://6oc0cgc3mbqb" path="res://asset/audio/sfx/环境音/白噪音/白噪声楼道2.ogg" id="3_ka5ik"]
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_ynt5w"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_ynt5w"]
[ext_resource type="Texture2D" uid="uid://dgflh16vwwgpr" path="res://asset/art/gif/c04_鬼打墙/鬼打墙.png" id="5_4rr4q"]
[ext_resource type="AudioStream" uid="uid://mio13gkcrv7q" path="res://asset/audio/effect/action/bookOpen.ogg" id="5_6q2e1"] [ext_resource type="AudioStream" uid="uid://mio13gkcrv7q" path="res://asset/audio/effect/action/bookOpen.ogg" id="5_6q2e1"]
[ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="6_0hnsl"] [ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="6_0hnsl"]
[ext_resource type="Texture2D" uid="uid://b35bkbimiepl1" path="res://asset/art/gif/c04_鬼打墙/鬼打墙三扇门.png" id="6_4rr4q"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="7_vek4i"] [ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="7_vek4i"]
[ext_resource type="Texture2D" uid="uid://b7gyapghy3tsy" path="res://asset/art/neutral_point_light.png" id="8_vek4i"] [ext_resource type="Texture2D" uid="uid://b7gyapghy3tsy" path="res://asset/art/neutral_point_light.png" id="8_vek4i"]
[ext_resource type="Texture2D" uid="uid://vktpw07jrmnb" path="res://asset/art/gif/c04_鬼打墙/鬼打墙_砖墙.png" id="9_6q2e1"] [ext_resource type="Texture2D" uid="uid://vktpw07jrmnb" path="res://asset/art/gif/c04_鬼打墙/鬼打墙_砖墙.png" id="9_6q2e1"]
@ -47,7 +47,7 @@ metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
[node name="BGSprite2D" parent="Ground" index="2"] [node name="BGSprite2D" parent="Ground" index="2"]
light_mask = 5 light_mask = 5
position = Vector2(0, -24) position = Vector2(0, -24)
texture = ExtResource("5_4rr4q") texture = ExtResource("6_4rr4q")
offset = Vector2(0, -100) offset = Vector2(0, -100)
[node name="portal_left" parent="Ground/DeployLayer" index="0"] [node name="portal_left" parent="Ground/DeployLayer" index="0"]

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=18 format=3 uid="uid://cmbg3y18btteg"] [gd_scene load_steps=20 format=3 uid="uid://cmbg3y18btteg"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_sugsn"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_sugsn"]
[ext_resource type="Script" uid="uid://idbsci4bneuc" path="res://scene/ground/scene/c04/s05_客厅.gd" id="2_sugsn"] [ext_resource type="Script" uid="uid://idbsci4bneuc" path="res://scene/ground/scene/c04/s05_客厅.gd" id="2_sugsn"]
@ -16,6 +16,8 @@
[ext_resource type="Script" uid="uid://blpmhmtgk05is" path="res://scene/ground/script/c04/s05_event木头人游戏.gd" id="12_aa4jq"] [ext_resource type="Script" uid="uid://blpmhmtgk05is" path="res://scene/ground/script/c04/s05_event木头人游戏.gd" id="12_aa4jq"]
[ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="12_bfpg0"] [ext_resource type="PackedScene" uid="uid://dsa6frlw6e6gg" path="res://scene/entity/pickable.tscn" id="12_bfpg0"]
[ext_resource type="PackedScene" uid="uid://bgrsj77ib4aft" path="res://scene/ground/script/c04/s05_closeup烧香游戏.tscn" id="13_3cw04"] [ext_resource type="PackedScene" uid="uid://bgrsj77ib4aft" path="res://scene/ground/script/c04/s05_closeup烧香游戏.tscn" id="13_3cw04"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="16_mwfwt"]
[ext_resource type="Texture2D" uid="uid://b7gyapghy3tsy" path="res://asset/art/neutral_point_light.png" id="16_omv2t"]
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
@ -84,39 +86,66 @@ position = Vector2(189, 39)
packed_scene = ExtResource("13_3cw04") packed_scene = ExtResource("13_3cw04")
[node name="Pickable九宫格块" parent="Ground/DeployLayer" index="5" instance=ExtResource("12_bfpg0")] [node name="Pickable九宫格块" parent="Ground/DeployLayer" index="5" instance=ExtResource("12_bfpg0")]
position = Vector2(399, 48)
[node name="Event木头人游戏" type="Node2D" parent="Ground/DeployLayer" index="6"] [node name="Event木头人游戏" type="Node2D" parent="Ground/DeployLayer" index="6"]
script = ExtResource("12_aa4jq") script = ExtResource("12_aa4jq")
event_name = &"c04_puppet_game"
event_mode = "none"
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d" metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
[node name="Pro木头人1" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"] [node name="Pro木头人1" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"]
position = Vector2(510, 41) position = Vector2(182, 44)
sprite_frames = ExtResource("6_llv1p") sprite_frames = ExtResource("6_llv1p")
animation = &"木头人游戏1_查看恢复" animation = &"木头人游戏1_进门动作"
frame = 3 flip_h = true
frame_progress = 1.0
script = ExtResource("7_sprhu") script = ExtResource("7_sprhu")
autostart = false
metadata/_custom_type_script = "uid://cphfob11f7atx" metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Event木头人游戏/Pro木头人1"]
energy = 0.0
texture = ExtResource("16_omv2t")
[node name="Pro木头人2" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"] [node name="Pro木头人2" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"]
position = Vector2(401, 38) position = Vector2(401, 38)
sprite_frames = ExtResource("6_llv1p") sprite_frames = ExtResource("6_llv1p")
animation = &"木头人游戏2_进门动作" animation = &"木头人游戏2_进门动作"
frame = 3 flip_h = true
frame_progress = 1.0
script = ExtResource("7_sprhu") script = ExtResource("7_sprhu")
metadata/_custom_type_script = "uid://cphfob11f7atx" metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Event木头人游戏/Pro木头人2"]
energy = 0.0
texture = ExtResource("16_omv2t")
[node name="Pro木头人3" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"] [node name="Pro木头人3" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event木头人游戏"]
position = Vector2(190, 50) position = Vector2(507, 38)
sprite_frames = ExtResource("6_llv1p") sprite_frames = ExtResource("6_llv1p")
animation = &"木头人游戏3_进门动作" animation = &"木头人游戏3_查看"
frame = 3 flip_h = true
frame_progress = 1.0
script = ExtResource("7_sprhu") script = ExtResource("7_sprhu")
autostart = false
metadata/_custom_type_script = "uid://cphfob11f7atx" metadata/_custom_type_script = "uid://cphfob11f7atx"
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Event木头人游戏/Pro木头人3"]
energy = 0.0
texture = ExtResource("16_omv2t")
[node name="Ambush木头人1" parent="Ground/DeployLayer/Event木头人游戏" instance=ExtResource("16_mwfwt")]
position = Vector2(173, 56)
enabled = false
one_shot = false
[node name="Ambush木头人2" parent="Ground/DeployLayer/Event木头人游戏" instance=ExtResource("16_mwfwt")]
position = Vector2(382, 58)
enabled = false
one_shot = false
[node name="Ambush木头人3" parent="Ground/DeployLayer/Event木头人游戏" instance=ExtResource("16_mwfwt")]
position = Vector2(476, 57)
enabled = false
one_shot = false
[node name="MainPlayer" parent="Ground" index="5"] [node name="MainPlayer" parent="Ground" index="5"]
position = Vector2(63, 95) position = Vector2(63, 95)
catty_light_energy = 0.5 catty_light_energy = 0.5

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=49 format=3 uid="uid://dcg8ekvhqxjjs"] [gd_scene load_steps=50 format=3 uid="uid://dcg8ekvhqxjjs"]
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_rv7yf"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_rv7yf"]
[ext_resource type="Script" uid="uid://t2p7to688wd3" path="res://scene/ground/scene/c04/s08_三楼III.gd" id="2_ryonc"] [ext_resource type="Script" uid="uid://t2p7to688wd3" path="res://scene/ground/scene/c04/s08_三楼III.gd" id="2_ryonc"]
@ -28,16 +28,17 @@
[ext_resource type="Texture2D" uid="uid://djoft6600kly6" path="res://asset/art/scene/c03/s01_三楼/fg_前景.png" id="20_3eqs5"] [ext_resource type="Texture2D" uid="uid://djoft6600kly6" path="res://asset/art/scene/c03/s01_三楼/fg_前景.png" id="20_3eqs5"]
[ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="20_cl576"] [ext_resource type="PackedScene" uid="uid://bnf3lkcbpx1ar" path="res://scene/entity/ambush.tscn" id="20_cl576"]
[ext_resource type="Texture2D" uid="uid://vf0gl8l7hrif" path="res://asset/art/gif/c04_三楼走廊擦墙演出/擦墙字.png" id="21_2rmvt"] [ext_resource type="Texture2D" uid="uid://vf0gl8l7hrif" path="res://asset/art/gif/c04_三楼走廊擦墙演出/擦墙字.png" id="21_2rmvt"]
[ext_resource type="Texture2D" uid="uid://btrjkyaawjxvb" path="res://asset/art/gif/c04_鬼打墙/纸人1.png" id="21_llqg1"]
[ext_resource type="SpriteFrames" uid="uid://pf7mglnhuaab" path="res://asset/art/gif/c04_三楼走廊擦墙演出/c04_三楼走廊擦墙演出_frames.tres" id="22_a3f3m"] [ext_resource type="SpriteFrames" uid="uid://pf7mglnhuaab" path="res://asset/art/gif/c04_三楼走廊擦墙演出/c04_三楼走廊擦墙演出_frames.tres" id="22_a3f3m"]
[ext_resource type="Texture2D" uid="uid://c7hh6cvkahswt" path="res://asset/art/scene/c03/引导纸人/指引纸人4歪头.png" id="22_camrr"] [ext_resource type="Texture2D" uid="uid://ck10sjhjvr4wg" path="res://asset/art/gif/c04_鬼打墙/纸人2.png" id="22_qnwug"]
[ext_resource type="Texture2D" uid="uid://b7gyapghy3tsy" path="res://asset/art/neutral_point_light.png" id="23_a3f3m"] [ext_resource type="Texture2D" uid="uid://b7gyapghy3tsy" path="res://asset/art/neutral_point_light.png" id="23_a3f3m"]
[ext_resource type="Script" uid="uid://86rvkbnxd2ti" path="res://scene/entity/visible_static_body.gd" id="27_w5p20"] [ext_resource type="Script" uid="uid://86rvkbnxd2ti" path="res://scene/entity/visible_static_body.gd" id="27_w5p20"]
[ext_resource type="Texture2D" uid="uid://bxernv6qyitdn" path="res://asset/art/scene/c03/引导纸人/指引纸人1.png" id="28_eu2wc"] [ext_resource type="Texture2D" uid="uid://bxernv6qyitdn" path="res://asset/art/scene/c03/引导纸人/指引纸人1.png" id="28_eu2wc"]
[ext_resource type="Texture2D" uid="uid://ci0jxl74wek65" path="res://asset/art/scene/c03/引导纸人/指引纸人2.png" id="29_lliag"] [ext_resource type="Texture2D" uid="uid://ci0jxl74wek65" path="res://asset/art/scene/c03/引导纸人/指引纸人2.png" id="29_lliag"]
[ext_resource type="Texture2D" uid="uid://bxmc7pas3b6wa" path="res://asset/art/scene/c03/引导纸人/指引纸人4.png" id="30_44hgy"] [ext_resource type="Texture2D" uid="uid://bxmc7pas3b6wa" path="res://asset/art/scene/c03/引导纸人/指引纸人4.png" id="30_44hgy"]
[ext_resource type="Texture2D" uid="uid://vktpw07jrmnb" path="res://asset/art/gif/c04_鬼打墙/鬼打墙_砖墙.png" id="32_44hgy"] [ext_resource type="Texture2D" uid="uid://vktpw07jrmnb" path="res://asset/art/gif/c04_鬼打墙/鬼打墙_砖墙.png" id="32_44hgy"]
[ext_resource type="Texture2D" uid="uid://dgflh16vwwgpr" path="res://asset/art/gif/c04_鬼打墙/鬼打墙.png" id="32_hrm8u"]
[ext_resource type="Script" uid="uid://bkkiyk5jkdw4d" path="res://manager/event_manager/event2d.gd" id="34_camrr"] [ext_resource type="Script" uid="uid://bkkiyk5jkdw4d" path="res://manager/event_manager/event2d.gd" id="34_camrr"]
[ext_resource type="Texture2D" uid="uid://b35bkbimiepl1" path="res://asset/art/gif/c04_鬼打墙/鬼打墙三扇门.png" id="37_camrr"]
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
@ -287,10 +288,9 @@ updater_stages = Array[int]([0])
metadata/_custom_type_script = "uid://0wjaho6qkg6s" metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="排队纸人" type="Sprite2D" parent="Ground/DeployLayer" index="11"] [node name="排队纸人" type="Sprite2D" parent="Ground/DeployLayer" index="11"]
position = Vector2(655, 25) position = Vector2(413.6, 10.4)
scale = Vector2(0.8, 0.8) scale = Vector2(0.8, 0.8)
texture = ExtResource("30_44hgy") texture = ExtResource("21_llqg1")
flip_h = true
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人"] [node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人"]
script = ExtResource("17_eu2wc") script = ExtResource("17_eu2wc")
@ -301,10 +301,9 @@ updater_stages = Array[int]([3])
metadata/_custom_type_script = "uid://0wjaho6qkg6s" metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="排队纸人_歪头" type="Sprite2D" parent="Ground/DeployLayer" index="12"] [node name="排队纸人_歪头" type="Sprite2D" parent="Ground/DeployLayer" index="12"]
position = Vector2(655, 25) position = Vector2(413.6, 10.4)
scale = Vector2(0.8, 0.8) scale = Vector2(0.8, 0.8)
texture = ExtResource("22_camrr") texture = ExtResource("22_qnwug")
flip_h = true
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人_歪头"] [node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人_歪头"]
script = ExtResource("17_eu2wc") script = ExtResource("17_eu2wc")
@ -480,7 +479,7 @@ unique_name_in_owner = true
light_mask = 5 light_mask = 5
z_index = -5 z_index = -5
position = Vector2(0, -24) position = Vector2(0, -24)
texture = ExtResource("32_hrm8u") texture = ExtResource("37_camrr")
centered = false centered = false
offset = Vector2(0, -100) offset = Vector2(0, -100)

View File

@ -4,13 +4,16 @@ extends Event2D
# var prev_stage := 0 # var prev_stage := 0
# var stage := 0 # var stage := 0
@onready var puppet1 = $"Pro木头人1" as ProAnimatedSprite2D
@onready var puppet2 = $"Pro木头人2" as ProAnimatedSprite2D
@onready var puppet3 = $"Pro木头人3" as ProAnimatedSprite2D
@onready var puppets = [puppet1, puppet2, puppet3]
func _ready() -> void: func _ready() -> void:
super._ready() super._ready()
if Engine.is_editor_hint(): if Engine.is_editor_hint():
return return
# 等待 ground ready
await SceneManager.ground_ready
func _on_global_stage_updated(e: StringName, s: int) -> void: func _on_global_stage_updated(e: StringName, s: int) -> void:
@ -18,7 +21,7 @@ func _on_global_stage_updated(e: StringName, s: int) -> void:
func _on_ground_ready(_ground: Ground2D) -> void: func _on_ground_ready(_ground: Ground2D) -> void:
pass _on_stage_updated()
func _on_pre_stage_updated() -> void: func _on_pre_stage_updated() -> void:
@ -26,4 +29,96 @@ func _on_pre_stage_updated() -> void:
func _on_stage_updated() -> void: func _on_stage_updated() -> void:
pass # c04_puppet_game: 0:初始化 1:开始游戏 2:游戏胜利
match stage:
0:
var ambush = $"Ambush木头人1" as Ambush2D
ambush.enabled = true
ambush.triggered.connect(_welcome_animation.bind(0, ambush))
1:
puppet1.animation = "木头人游戏1_进门动作"
puppet1.frame = puppet1.sprite_frames.get_frame_count("木头人游戏1_进门动作") - 1
puppet2.animation = "木头人游戏2_进门动作"
puppet2.frame = puppet2.sprite_frames.get_frame_count("木头人游戏2_进门动作") - 1
puppet3.animation = "木头人游戏3_进门动作"
puppet3.frame = puppet3.sprite_frames.get_frame_count("木头人游戏3_进门动作") - 1
# 玩家移动时,开启游戏
SceneManager.get_player().position_updated.connect(_on_player_position_updated)
2:
puppet1.animation = "木头人游戏1_胜利"
puppet1.frame = puppet1.sprite_frames.get_frame_count("木头人游戏1_胜利") - 1
puppet2.animation = "木头人游戏2_胜利"
puppet2.frame = puppet2.sprite_frames.get_frame_count("木头人游戏2_胜利") - 1
puppet3.animation = "木头人游戏3_胜利"
puppet3.frame = puppet3.sprite_frames.get_frame_count("木头人游戏3_胜利") - 1
# 邀请动作
func _welcome_animation(id: int, ambush) -> void:
ambush.enabled = false
puppets[id].play("木头人游戏%s_进门动作" % (id + 1))
# 0:not started yet; 1-3:started; 4:finished.
var game_stage := 0
func _on_player_position_updated(pos: Vector2) -> void:
if game_stage == 4:
return
if game_stage == 0:
# 开始游戏
game_stage = 1
# 所有 puppet 聚光
spot_light = 4
# 从第一个开始游戏
spot_light = 1
######## 控制聚光灯
const SPOT_LIGHT_ENERGY = 0.3
const SPOT_LIGHT_TWEEN_DURATION = 0.5
# 控制聚光灯,哪个木头人被关注
# 0:无 1:一号 2:二号 3:三号 4:全部
var spot_light = 0:
set(val):
if spot_light != val:
# 从 4 到其他
var current_lighting: Array = _get_lighting_puppets(spot_light)
var target_lighting: Array = _get_lighting_puppets(spot_light)
for p in current_lighting:
if not target_lighting.has(p):
# turn off
create_tween().tween_property(
p.get_node("PointLight2D"), "energy", 0.0, SPOT_LIGHT_TWEEN_DURATION
)
for p in target_lighting:
if not current_lighting.has(p):
# turn on
create_tween().tween_property(
p.get_node("PointLight2D"),
"energy",
SPOT_LIGHT_ENERGY,
SPOT_LIGHT_TWEEN_DURATION
)
spot_light = val
func _get_lighting_puppets(mode: int) -> Array:
var arr = []
match mode:
4:
arr = [puppet1, puppet2, puppet3]
1:
arr = [puppet1]
2:
arr = [puppet2]
3:
arr = [puppet3]
return arr