鬼打墙
This commit is contained in:
parent
cb459c46dd
commit
32db6aceaa
@ -89,27 +89,6 @@ animations = [{
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("9_av68t")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("10_ts00y")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("11_2mnxt")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("12_r8b8s")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("13_yevpv")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("14_i8od7")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("15_x11xv")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("16_vu64x")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
@ -128,10 +107,54 @@ animations = [{
|
||||
"texture": ExtResource("21_o5rpk")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"陆仁回头",
|
||||
"name": &"陆仁停在家门口",
|
||||
"speed": 30.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("9_av68t")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("10_ts00y")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("11_2mnxt")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("12_r8b8s")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("13_yevpv")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("14_i8od7")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("15_x11xv")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("16_vu64x")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("17_5seew")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("18_t11bv")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("19_jc1qd")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("20_akmyw")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("21_o5rpk")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"陆仁回头",
|
||||
"speed": 6.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("22_x2fa3")
|
||||
}, {
|
||||
@ -185,19 +208,19 @@ animations = [{
|
||||
"speed": 30.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 15.0,
|
||||
"duration": 10.0,
|
||||
"texture": ExtResource("1_53246")
|
||||
}, {
|
||||
"duration": 15.0,
|
||||
"duration": 10.0,
|
||||
"texture": ExtResource("2_ux4w6")
|
||||
}, {
|
||||
"duration": 15.0,
|
||||
"duration": 10.0,
|
||||
"texture": ExtResource("3_46u2u")
|
||||
}, {
|
||||
"duration": 15.0,
|
||||
"duration": 10.0,
|
||||
"texture": ExtResource("4_s4veq")
|
||||
}, {
|
||||
"duration": 15.0,
|
||||
"duration": 10.0,
|
||||
"texture": ExtResource("5_ggpb3")
|
||||
}],
|
||||
"loop": false,
|
||||
@ -222,12 +245,7 @@ animations = [{
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("14_i8od7")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"陆仁行走1",
|
||||
"speed": 30.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("9_av68t")
|
||||
}, {
|
||||
@ -245,8 +263,11 @@ animations = [{
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("14_i8od7")
|
||||
}, {
|
||||
"duration": 6.0,
|
||||
"texture": ExtResource("15_x11xv")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"陆仁行走2",
|
||||
"loop": false,
|
||||
"name": &"陆仁行走回头",
|
||||
"speed": 30.0
|
||||
}]
|
||||
|
@ -421,7 +421,7 @@ animations = [{
|
||||
"texture": ExtResource("21_v3lwr")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"木头人游戏3_动后尾帧静止",
|
||||
"name": &"木头人游戏3_互动后尾帧静止",
|
||||
"speed": 30.0
|
||||
}, {
|
||||
"frames": [{
|
||||
|
@ -45,7 +45,7 @@ c03_intro_c04: 0:初始化 1:演出完成
|
||||
|
||||
~ EventStage_c04
|
||||
# 小蝶家门口,陆蝶演出&鬼打墙
|
||||
c04_ghost_trapped: 0:初始化 1:第一次开门 2:进入鬼打墙场景 3:鬼打墙结束
|
||||
c04_ghost_trapped: 0:初始化 1:第一次开门 2:进入鬼打墙场景 3:鬼打墙结束 4:排队纸人歪头
|
||||
# 除晦游戏
|
||||
c04_erase_curse: 0:初始化 1:开始游戏 2:游戏结束
|
||||
|
||||
|
@ -459,6 +459,12 @@ skip[ID:prop_沾血的老虎钳_详情]
|
||||
~ Notes_c04
|
||||
# 鬼打墙
|
||||
当年他们是有多恨我们家?[ID:c04_鬼打墙_开始os]
|
||||
回家了...[ID:c04_鬼打墙_首次开门]
|
||||
???[ID:c04_鬼打墙_首次传送]
|
||||
不,我不想听它们的。[ID:c04_鬼打墙_走向楼梯]
|
||||
不会是...鬼打墙吧?[ID:c04_鬼打墙_再次开门]
|
||||
...[ID:c04_鬼打墙_全部交互完]
|
||||
我记得...{br}捂眼静心,或许有用。[ID:c04_鬼打墙_捂眼]
|
||||
=> END
|
||||
|
||||
~ Notes_c05
|
||||
|
@ -1,4 +1,4 @@
|
||||
[gd_resource type="SpriteFrames" load_steps=1053 format=3 uid="uid://b7fhheih1hbvf"]
|
||||
[gd_resource type="SpriteFrames" load_steps=1071 format=3 uid="uid://b7fhheih1hbvf"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dvq64espa37lx" path="res://asset/art/animation/c00_吕萍_idle_left/zhhx1.png" id="1_ekv0l"]
|
||||
[ext_resource type="Texture2D" uid="uid://dcp4gk5lib4bl" path="res://asset/art/animation/c00_吕萍_idle_left/zhhx2.png" id="2_fq076"]
|
||||
@ -1052,6 +1052,24 @@
|
||||
[ext_resource type="Texture2D" uid="uid://d11u3r8knuujh" path="res://asset/art/gif/c03_胖子游戏/c03_胖子游戏第一段/胖子对半砍/6.png" id="1041_nis13"]
|
||||
[ext_resource type="Texture2D" uid="uid://df0k1vv0tnx75" path="res://asset/art/gif/c03_胖子游戏/c03_胖子游戏第一段/胖子对半砍/7.png" id="1042_y1qej"]
|
||||
[ext_resource type="Texture2D" uid="uid://r7l0ou2nvmwt" path="res://asset/art/gif/c03_胖子游戏/c03_胖子游戏第一段/胖子对半砍/8.png" id="1043_e3b0h"]
|
||||
[ext_resource type="Texture2D" uid="uid://dmr1greolytrq" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/0.png" id="1053_mhvgv"]
|
||||
[ext_resource type="Texture2D" uid="uid://gy6scy5crhox" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/1.png" id="1054_3vhq4"]
|
||||
[ext_resource type="Texture2D" uid="uid://b7vdib1l4fvmv" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/2.png" id="1055_37ts7"]
|
||||
[ext_resource type="Texture2D" uid="uid://6p3a2xxh4vle" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/3.png" id="1056_q7q0i"]
|
||||
[ext_resource type="Texture2D" uid="uid://dxcm3462m4my6" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/4.png" id="1057_la5wd"]
|
||||
[ext_resource type="Texture2D" uid="uid://b28j1kgnc0xro" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/5.png" id="1058_voge0"]
|
||||
[ext_resource type="Texture2D" uid="uid://dmnjnbsodlpon" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/6.png" id="1059_h8k05"]
|
||||
[ext_resource type="Texture2D" uid="uid://t6pqq5x6jafs" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/7.png" id="1060_2uu24"]
|
||||
[ext_resource type="Texture2D" uid="uid://gy1ugcpngt1p" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/8.png" id="1061_0ye5j"]
|
||||
[ext_resource type="Texture2D" uid="uid://4t48tqnox4vr" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/9.png" id="1062_xfi5l"]
|
||||
[ext_resource type="Texture2D" uid="uid://d2j6ubjov164f" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/10.png" id="1063_r3y8n"]
|
||||
[ext_resource type="Texture2D" uid="uid://dop55jxd1okb8" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/11.png" id="1064_b5n4m"]
|
||||
[ext_resource type="Texture2D" uid="uid://d3p62apuyj7l6" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/12.png" id="1065_b3sel"]
|
||||
[ext_resource type="Texture2D" uid="uid://c7ryymjhjk2gv" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/13.png" id="1066_t25a7"]
|
||||
[ext_resource type="Texture2D" uid="uid://cywr0736ooibx" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/14.png" id="1067_wv12g"]
|
||||
[ext_resource type="Texture2D" uid="uid://dv4gc8w1p16gv" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/15.png" id="1068_ap1tk"]
|
||||
[ext_resource type="Texture2D" uid="uid://rbsdh3wjiy4d" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/16.png" id="1069_sdjh1"]
|
||||
[ext_resource type="Texture2D" uid="uid://d3308o8u5bb16" path="res://asset/art/gif/c04_木头人游戏/木头人_吕萍_死亡动作/17.png" id="1070_6o5lc"]
|
||||
|
||||
[resource]
|
||||
animations = [{
|
||||
@ -4939,4 +4957,63 @@ animations = [{
|
||||
"loop": false,
|
||||
"name": &"c03_胖子游戏_胖子对半砍",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 2.0,
|
||||
"texture": ExtResource("1053_mhvgv")
|
||||
}, {
|
||||
"duration": 2.0,
|
||||
"texture": ExtResource("1054_3vhq4")
|
||||
}, {
|
||||
"duration": 2.0,
|
||||
"texture": ExtResource("1055_37ts7")
|
||||
}, {
|
||||
"duration": 2.0,
|
||||
"texture": ExtResource("1056_q7q0i")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1057_la5wd")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1058_voge0")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1059_h8k05")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1060_2uu24")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1061_0ye5j")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1062_xfi5l")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1063_r3y8n")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1064_b5n4m")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1065_b3sel")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1066_t25a7")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1067_wv12g")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1068_ap1tk")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1069_sdjh1")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("1070_6o5lc")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"c04_吕萍_木头人死亡",
|
||||
"speed": 6.0
|
||||
}]
|
||||
|
@ -56,6 +56,7 @@ var ANIMATION_CONFIG = {
|
||||
20: [&"", Vector2.ONE, Vector2(2.5, -48.0), &"c02_吕萍_背靠呼吸", &""],
|
||||
21: [&"", Vector2.ONE, Vector2(2.5, -48.0), &"c02_吕萍_背靠起身_屠宰间", &""],
|
||||
22: [&"", Vector2.ONE, Vector2(341.0, -75.0), &"", &"c02_吕萍_风吹过"],
|
||||
23: [&"c04_吕萍_木头人死亡", Vector2.ONE, Vector2(0, -63.5)],
|
||||
},
|
||||
"吕萍爬行":
|
||||
{
|
||||
|
185
scene/effect/c04_鬼打墙黑手.tscn
Normal file
185
scene/effect/c04_鬼打墙黑手.tscn
Normal file
@ -0,0 +1,185 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://duvdtgkbiqtru"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://b8tbug8n7o240" path="res://asset/art/gif/c04_鬼打墙/ux_手.png" id="4_70mrd"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_gd1dm"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("黑手左:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-131, 253)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("黑手右:position")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(694, 244)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("黑手左:scale")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("黑手右:scale")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_oa0hm"]
|
||||
resource_name = "双手捂屏幕"
|
||||
length = 3.5
|
||||
step = 0.02
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("黑手左:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = false
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5, 3.06),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(-131, 253), Vector2(9, 217), Vector2(110, 201)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("黑手右:position")
|
||||
tracks/1/interp = 2
|
||||
tracks/1/loop_wrap = false
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 1.42, 3.06),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(694, 244), Vector2(554, 216), Vector2(450, 190)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("黑手左:scale")
|
||||
tracks/2/interp = 2
|
||||
tracks/2/loop_wrap = false
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 2.96),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0.8, 0.8), Vector2(1.7, 1.7)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("黑手右:scale")
|
||||
tracks/3/interp = 2
|
||||
tracks/3/loop_wrap = false
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0, 2.96),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0.8, 0.8), Vector2(1.7, 1.7)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_70mrd"]
|
||||
resource_name = "双手离开屏幕"
|
||||
length = 2.0
|
||||
step = 0.02
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("黑手左:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = false
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(110, 201), Vector2(-199, 273)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("黑手右:position")
|
||||
tracks/1/interp = 2
|
||||
tracks/1/loop_wrap = false
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(450, 190), Vector2(759, 273)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("黑手左:scale")
|
||||
tracks/2/interp = 2
|
||||
tracks/2/loop_wrap = false
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1.7, 1.7), Vector2(1, 1)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("黑手右:scale")
|
||||
tracks/3/interp = 2
|
||||
tracks/3/loop_wrap = false
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1.7, 1.7), Vector2(1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_43ipm"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_gd1dm"),
|
||||
&"双手捂屏幕": SubResource("Animation_oa0hm"),
|
||||
&"双手离开屏幕": SubResource("Animation_70mrd")
|
||||
}
|
||||
|
||||
[node name="黑手Effect" type="CanvasLayer"]
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_43ipm")
|
||||
}
|
||||
|
||||
[node name="黑手左" type="Sprite2D" parent="."]
|
||||
position = Vector2(-131, 253)
|
||||
texture = ExtResource("4_70mrd")
|
||||
offset = Vector2(100, -50)
|
||||
|
||||
[node name="黑手右" type="Sprite2D" parent="."]
|
||||
position = Vector2(694, 244)
|
||||
texture = ExtResource("4_70mrd")
|
||||
offset = Vector2(-100, -50)
|
||||
flip_h = true
|
13
scene/entity/visible_static_body.gd
Normal file
13
scene/entity/visible_static_body.gd
Normal file
@ -0,0 +1,13 @@
|
||||
class_name VisibleStaticBody
|
||||
extends StaticBody2D
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_on_visibility_changed()
|
||||
visibility_changed.connect(_on_visibility_changed)
|
||||
|
||||
|
||||
func _on_visibility_changed() -> void:
|
||||
var disabled = not is_visible_in_tree()
|
||||
for c in get_children():
|
||||
c.set("disabled", disabled)
|
1
scene/entity/visible_static_body.gd.uid
Normal file
1
scene/entity/visible_static_body.gd.uid
Normal file
@ -0,0 +1 @@
|
||||
uid://86rvkbnxd2ti
|
@ -50,7 +50,7 @@ const GROUND_SCENE_PATH_DICT: Dictionary[String, Dictionary] = {
|
||||
"c04_s01": {"path": "uid://drjnu33pga6i5", "name": "父母房间"},
|
||||
"c04_s02": {"path": "uid://4dog18klgvv6", "name": "二楼III"},
|
||||
"c04_s03": {"path": "uid://cdqkn0de1skvq", "name": "院子III"},
|
||||
"c04_s04": {"path": "uid://bykwiuj02tcxa", "name": "鬼打墙"},
|
||||
"c04_s04": {"path": "uid://bykwiuj02tcxa", "name": "鬼打墙"}, # 鬼打墙场景没有使用;融合在 三楼III 中
|
||||
"c04_s05": {"path": "uid://cmbg3y18btteg", "name": "客厅"},
|
||||
"c04_s06": {"path": "uid://dgcxqcu5k6tvt", "name": "小蝶房间"},
|
||||
"c04_s07": {"path": "uid://b6cfu5rs88pql", "name": "佛堂"},
|
||||
|
@ -23,4 +23,52 @@ func _setup_node_reference() -> void:
|
||||
|
||||
|
||||
func _on_ground_ready() -> void:
|
||||
pass
|
||||
Util.timer(1.2, SceneManager.pop_os_with_str.bind("c04_鬼打墙_再次开门"))
|
||||
|
||||
|
||||
func ambush_door1() -> void:
|
||||
$"../DeployLayer/Ambush门1".enabled = false
|
||||
_show_wall(1)
|
||||
|
||||
|
||||
func ambush_door2() -> void:
|
||||
$"../DeployLayer/Ambush门2".enabled = false
|
||||
_show_wall(2)
|
||||
|
||||
|
||||
func ambush_door3() -> void:
|
||||
$"../DeployLayer/Ambush门3".enabled = false
|
||||
_show_wall(3)
|
||||
|
||||
|
||||
var wall_count := 0
|
||||
|
||||
|
||||
func _show_wall(id: int) -> void:
|
||||
wall_count += 1
|
||||
var wall = get_node("../DeployLayer/砖墙" + str(id))
|
||||
wall.show()
|
||||
wall.modulate.a = 0.0
|
||||
create_tween().tween_property(wall, "modulate:a", 1.0, 1.0)
|
||||
#TODO
|
||||
$"Sfx墙体浮现".play()
|
||||
SceneManager.pop_debug_dialog_info("音效", "墙体浮现音效")
|
||||
# 烛光抖动
|
||||
var candle_l = get_node("../DeployLayer/蜡烛光" + str(id))
|
||||
var candle_r = get_node("../DeployLayer/蜡烛光" + str(id + 1))
|
||||
var tween = create_tween()
|
||||
tween.tween_property(candle_l, "energy", 0.2, 0.8)
|
||||
tween.parallel().tween_property(candle_r, "energy", 0.3, 0.7)
|
||||
tween.tween_property(candle_l, "energy", 0.6, 0.7)
|
||||
tween.parallel().tween_property(candle_r, "energy", 0.6, 0.8)
|
||||
if wall_count == 3:
|
||||
_game_success()
|
||||
|
||||
func _game_success() -> void:
|
||||
SceneManager.lock_player()
|
||||
# show
|
||||
await Util.wait(0.5)
|
||||
await SceneManager.pop_os_with_str("c04_鬼打墙_全部交互完")
|
||||
await Util.wait(0.5)
|
||||
await SceneManager.pop_os_with_str("c04_鬼打墙_捂眼")
|
||||
|
||||
|
@ -1,54 +1,18 @@
|
||||
[gd_scene load_steps=17 format=3 uid="uid://bykwiuj02tcxa"]
|
||||
[gd_scene load_steps=12 format=3 uid="uid://bykwiuj02tcxa"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_q48aa"]
|
||||
[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="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="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="6_0hnsl"]
|
||||
[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://vktpw07jrmnb" path="res://asset/art/gif/c04_鬼打墙/鬼打墙_砖墙.png" id="9_6q2e1"]
|
||||
[ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="11_t03n4"]
|
||||
[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="12_vt3n2"]
|
||||
[ext_resource type="Texture2D" uid="uid://djoft6600kly6" path="res://asset/art/scene/c03/s01_三楼/fg_前景.png" id="20_k8fkv"]
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_chbaa"]
|
||||
atlas = ExtResource("11_t03n4")
|
||||
region = Rect2(0, 0, 6, 14)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_th1ek"]
|
||||
atlas = ExtResource("11_t03n4")
|
||||
region = Rect2(6, 0, 6, 14)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_to1d1"]
|
||||
atlas = ExtResource("11_t03n4")
|
||||
region = Rect2(12, 0, 6, 14)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_nx6jy"]
|
||||
atlas = ExtResource("11_t03n4")
|
||||
region = Rect2(18, 0, 6, 14)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_w4rk2"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 3.0,
|
||||
"texture": SubResource("AtlasTexture_chbaa")
|
||||
}, {
|
||||
"duration": 3.0,
|
||||
"texture": SubResource("AtlasTexture_th1ek")
|
||||
}, {
|
||||
"duration": 3.0,
|
||||
"texture": SubResource("AtlasTexture_to1d1")
|
||||
}, {
|
||||
"duration": 3.0,
|
||||
"texture": SubResource("AtlasTexture_nx6jy")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 10.0
|
||||
}]
|
||||
|
||||
[node name="S04" type="Node2D"]
|
||||
metadata/_edit_horizontal_guides_ = [98.0, 120.0]
|
||||
|
||||
@ -74,6 +38,12 @@ mode = "场景背景音"
|
||||
"感应玩家操作" = false
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx墙体浮现" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
stream = ExtResource("5_6q2e1")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_ynt5w")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
light_mask = 5
|
||||
position = Vector2(0, -24)
|
||||
@ -82,93 +52,76 @@ offset = Vector2(0, -100)
|
||||
|
||||
[node name="portal_left" parent="Ground/DeployLayer" index="0"]
|
||||
position = Vector2(34, 8)
|
||||
enabled = false
|
||||
|
||||
[node name="portal_right" parent="Ground/DeployLayer" index="1"]
|
||||
position = Vector2(697, 18)
|
||||
target_scene = "c02_s06"
|
||||
target_portal = "3"
|
||||
enabled = false
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("6_0hnsl")]
|
||||
position = Vector2(515, 14)
|
||||
position = Vector2(332, 1)
|
||||
debug_note = "传送点"
|
||||
enabled = false
|
||||
portal_name = "1"
|
||||
|
||||
[node name="小蜡烛系列" type="Node2D" parent="Ground/DeployLayer" index="3"]
|
||||
position = Vector2(0, 6)
|
||||
[node name="砖墙1" type="Sprite2D" parent="Ground/DeployLayer" index="3"]
|
||||
position = Vector2(282, -7)
|
||||
texture = ExtResource("9_6q2e1")
|
||||
|
||||
[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
position = Vector2(680, 48)
|
||||
sprite_frames = SubResource("SpriteFrames_w4rk2")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛系列/小蜡烛"]
|
||||
position = Vector2(0, -12.8172)
|
||||
color = Color(0.999971, 0.912551, 0.842208, 1)
|
||||
energy = 1.2
|
||||
blend_mode = 2
|
||||
texture = ExtResource("12_vt3n2")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="小蜡烛2" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
position = Vector2(585, 51)
|
||||
sprite_frames = SubResource("SpriteFrames_w4rk2")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛系列/小蜡烛2"]
|
||||
position = Vector2(0, -12.8172)
|
||||
color = Color(0.999971, 0.912551, 0.842208, 1)
|
||||
energy = 1.2
|
||||
blend_mode = 2
|
||||
texture = ExtResource("12_vt3n2")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="小蜡烛3" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
position = Vector2(283, -3)
|
||||
sprite_frames = SubResource("SpriteFrames_w4rk2")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛系列/小蜡烛3"]
|
||||
position = Vector2(0, -12.8172)
|
||||
color = Color(0.999971, 0.912551, 0.842208, 1)
|
||||
energy = 1.2
|
||||
blend_mode = 2
|
||||
texture = ExtResource("12_vt3n2")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="小蜡烛4" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
position = Vector2(106, 4)
|
||||
sprite_frames = SubResource("SpriteFrames_w4rk2")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛系列/小蜡烛4"]
|
||||
position = Vector2(0, -12.8172)
|
||||
color = Color(0.999971, 0.912551, 0.842208, 1)
|
||||
energy = 1.2
|
||||
blend_mode = 2
|
||||
texture = ExtResource("12_vt3n2")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="小蜡烛5" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
self_modulate = Color(0.611765, 0.611765, 0.611765, 1)
|
||||
position = Vector2(223, -49)
|
||||
sprite_frames = SubResource("SpriteFrames_w4rk2")
|
||||
autoplay = "default"
|
||||
|
||||
[node name="小蜡烛PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/小蜡烛系列/小蜡烛5"]
|
||||
position = Vector2(0, -12.8172)
|
||||
color = Color(0.999971, 0.912551, 0.842208, 1)
|
||||
energy = 1.2
|
||||
blend_mode = 2
|
||||
texture = ExtResource("12_vt3n2")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="砖墙" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
[node name="砖墙2" type="Sprite2D" parent="Ground/DeployLayer" index="4"]
|
||||
position = Vector2(368, -8)
|
||||
texture = ExtResource("9_6q2e1")
|
||||
|
||||
[node name="砖墙3" type="Sprite2D" parent="Ground/DeployLayer" index="5"]
|
||||
position = Vector2(451, -8)
|
||||
texture = ExtResource("9_6q2e1")
|
||||
|
||||
[node name="Ambush门1" parent="Ground/DeployLayer" index="6" instance=ExtResource("7_vek4i")]
|
||||
position = Vector2(163, -27)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door1"
|
||||
|
||||
[node name="Ambush门2" parent="Ground/DeployLayer" index="7" instance=ExtResource("7_vek4i")]
|
||||
position = Vector2(249, -26)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door2"
|
||||
|
||||
[node name="Ambush门3" parent="Ground/DeployLayer" index="8" instance=ExtResource("7_vek4i")]
|
||||
position = Vector2(330, -26)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door3"
|
||||
|
||||
[node name="蜡烛光1" type="PointLight2D" parent="Ground/DeployLayer" index="9"]
|
||||
position = Vector2(122, 36)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("8_vek4i")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光2" type="PointLight2D" parent="Ground/DeployLayer" index="10"]
|
||||
position = Vector2(206, 35)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("8_vek4i")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光3" type="PointLight2D" parent="Ground/DeployLayer" index="11"]
|
||||
position = Vector2(290, 36)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("8_vek4i")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光4" type="PointLight2D" parent="Ground/DeployLayer" index="12"]
|
||||
position = Vector2(373, 35)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("8_vek4i")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(34, 98)
|
||||
catty_light_energy = 0.5
|
||||
@ -178,11 +131,8 @@ facing_direction = Vector2(1, 0)
|
||||
[node name="CameraFocusMarker" parent="Ground" index="6"]
|
||||
limit_right = 749
|
||||
|
||||
[node name="FGSprite2D" parent="Ground/ParallaxForeground/FGParallaxLayer" index="0"]
|
||||
texture = ExtResource("20_k8fkv")
|
||||
|
||||
[node name="PlayerLine2D" parent="Ground/ParallaxForeground" index="2"]
|
||||
points = PackedVector2Array(30, 151, 723, 150)
|
||||
points = PackedVector2Array(30, 151, 540, 150)
|
||||
|
||||
[node name="DirectionalLight2D" parent="Ground" index="8"]
|
||||
visible = false
|
||||
|
@ -70,22 +70,37 @@ updater_ease_duration = 0.0
|
||||
updater_stages = Array[int]([0, 1])
|
||||
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
|
||||
|
||||
[node name="Pro木头人" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="3"]
|
||||
position = Vector2(210, 57)
|
||||
sprite_frames = ExtResource("6_llv1p")
|
||||
animation = &"木头人游戏1_查看"
|
||||
script = ExtResource("7_sprhu")
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="Closeup墙上儿童画" parent="Ground/DeployLayer" index="4" instance=ExtResource("10_2a7rr")]
|
||||
[node name="Closeup墙上儿童画" parent="Ground/DeployLayer" index="3" instance=ExtResource("10_2a7rr")]
|
||||
position = Vector2(338.5, -5)
|
||||
texture = ExtResource("11_3cw04")
|
||||
packed_scene = ExtResource("11_6pvlg")
|
||||
|
||||
[node name="Closeup烧香游戏" parent="Ground/DeployLayer" index="5" instance=ExtResource("10_2a7rr")]
|
||||
[node name="Closeup烧香游戏" parent="Ground/DeployLayer" index="4" instance=ExtResource("10_2a7rr")]
|
||||
position = Vector2(190, 36)
|
||||
packed_scene = ExtResource("13_3cw04")
|
||||
|
||||
[node name="Pro木头人1" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="5"]
|
||||
position = Vector2(510, 41)
|
||||
sprite_frames = ExtResource("6_llv1p")
|
||||
animation = &"木头人游戏1_进门动作"
|
||||
script = ExtResource("7_sprhu")
|
||||
autostart = false
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="Pro木头人2" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="6"]
|
||||
position = Vector2(338, 39)
|
||||
sprite_frames = ExtResource("6_llv1p")
|
||||
animation = &"木头人游戏2_进门动作"
|
||||
script = ExtResource("7_sprhu")
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="Pro木头人3" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="7"]
|
||||
position = Vector2(190, 50)
|
||||
sprite_frames = ExtResource("6_llv1p")
|
||||
animation = &"木头人游戏3_进门动作"
|
||||
script = ExtResource("7_sprhu")
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(63, 95)
|
||||
catty_light_energy = 0.5
|
||||
|
@ -4,7 +4,7 @@ extends AnimationRoot
|
||||
|
||||
# 覆盖该方法
|
||||
func _default_data() -> Dictionary:
|
||||
return {}
|
||||
return {"c04_ghost_trapped_suprised": false}
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
@ -14,13 +14,141 @@ func _ready() -> void:
|
||||
|
||||
|
||||
#region node_reference
|
||||
var interactable家门: Interactable2D
|
||||
#endregion
|
||||
|
||||
|
||||
# 读取设置变量名
|
||||
func _setup_node_reference() -> void:
|
||||
pass
|
||||
interactable家门 = $"../DeployLayer/Interactable家门"
|
||||
interactable家门.interacted.connect(_on_door_interacted)
|
||||
|
||||
|
||||
func _on_ground_ready() -> void:
|
||||
pass
|
||||
var trap_stage = EventManager.get_stage("c04_ghost_trapped")
|
||||
if trap_stage == 1:
|
||||
$"../DeployLayer/鬼打墙两侧纸人".show()
|
||||
if not data["c04_ghost_trapped_suprised"]:
|
||||
set_data("c04_ghost_trapped_suprised", true)
|
||||
Util.timer(1.2, SceneManager.pop_os_with_str.bind("c04_鬼打墙_首次传送"))
|
||||
elif trap_stage == 2:
|
||||
# 开始鬼打墙
|
||||
setup_trap()
|
||||
|
||||
|
||||
func _on_door_interacted() -> void:
|
||||
SceneManager.lock_player()
|
||||
# c04_ghost_trapped: 0:初始化 1:第一次开门 2:进入鬼打墙场景 3:鬼打墙结束 4:排队纸人歪头
|
||||
var trap_stage = EventManager.get_stage("c04_ghost_trapped")
|
||||
if trap_stage == 0:
|
||||
SceneManager.unlock_player()
|
||||
EventManager.set_stage("c04_ghost_trapped", 1)
|
||||
SceneManager.get_ground_loader().transition_to_scene("c04_s08", "1")
|
||||
elif trap_stage == 1 or trap_stage == 2:
|
||||
SceneManager.unlock_player()
|
||||
EventManager.set_stage("c04_ghost_trapped", 2)
|
||||
SceneManager.get_ground_loader().transition_to_scene("c04_s08", "1")
|
||||
elif trap_stage == 3:
|
||||
SceneManager.unlock_player()
|
||||
$"Sfx纸人咔嚓转头".play()
|
||||
EventManager.set_stage("c04_ghost_trapped", 4)
|
||||
SceneManager.get_ground_loader().transition_to_scene("c04_s05", "left")
|
||||
elif trap_stage == 4:
|
||||
SceneManager.unlock_player()
|
||||
SceneManager.get_ground_loader().transition_to_scene("c04_s05", "left")
|
||||
|
||||
var camera_rect
|
||||
var player_rect
|
||||
|
||||
func setup_trap() -> void:
|
||||
# 设置活动范围
|
||||
# 190-700
|
||||
camera_rect = SceneManager.get_camera_marker().default_camera_rect
|
||||
player_rect = SceneManager.get_player().player_movement_rect
|
||||
SceneManager.get_camera_marker().apply_limits(Rect2i(190, -158, 510, 316))
|
||||
SceneManager.get_player().player_movement_rect = Rect2(195, -158, 500, 316)
|
||||
$"../鬼打墙Layer".show()
|
||||
$"../DeployLayer".hide()
|
||||
# os
|
||||
Util.timer(1.2, SceneManager.pop_os_with_str.bind("c04_鬼打墙_再次开门"))
|
||||
|
||||
|
||||
func ambush_door1() -> void:
|
||||
$"../鬼打墙Layer/Ambush门1".enabled = false
|
||||
_show_wall(1)
|
||||
|
||||
|
||||
func ambush_door2() -> void:
|
||||
$"../鬼打墙Layer/Ambush门2".enabled = false
|
||||
_show_wall(2)
|
||||
|
||||
|
||||
func ambush_door3() -> void:
|
||||
$"../鬼打墙Layer/Ambush门3".enabled = false
|
||||
_show_wall(3)
|
||||
|
||||
|
||||
var wall_count := 0
|
||||
|
||||
|
||||
func _show_wall(id: int) -> void:
|
||||
wall_count += 1
|
||||
var wall = get_node("../鬼打墙Layer/砖墙" + str(id))
|
||||
wall.show()
|
||||
wall.modulate.a = 0.0
|
||||
create_tween().tween_property(wall, "modulate:a", 1.0, 1.0)
|
||||
#TODO
|
||||
$"Sfx墙体浮现".play()
|
||||
SceneManager.pop_debug_dialog_info("音效", "墙体浮现音效")
|
||||
# 烛光抖动
|
||||
var candle_l = get_node("../鬼打墙Layer/蜡烛光" + str(id))
|
||||
var candle_r = get_node("../鬼打墙Layer/蜡烛光" + str(id + 1))
|
||||
var tween = create_tween()
|
||||
tween.tween_property(candle_l, "energy", 0.2, 0.8)
|
||||
tween.parallel().tween_property(candle_r, "energy", 0.3, 0.7)
|
||||
tween.tween_property(candle_l, "energy", 0.6, 0.7)
|
||||
tween.parallel().tween_property(candle_r, "energy", 0.6, 0.8)
|
||||
if wall_count == 3:
|
||||
_game_success()
|
||||
|
||||
|
||||
func _game_success() -> void:
|
||||
SceneManager.lock_player()
|
||||
# show
|
||||
await Util.wait(0.5)
|
||||
await SceneManager.pop_os_with_str("c04_鬼打墙_全部交互完")
|
||||
await Util.wait(0.5)
|
||||
await SceneManager.pop_os_with_str("c04_鬼打墙_捂眼")
|
||||
await Util.wait(1.0)
|
||||
var animation_player = $"鬼打墙黑手Effect/AnimationPlayer"
|
||||
animation_player.play("双手捂屏幕")
|
||||
# 重置镜头与玩家活动范围
|
||||
SceneManager.get_player().player_movement_rect = player_rect
|
||||
var camera = SceneManager.get_camera_marker()
|
||||
# 镜头锁定玩家(镜头逐渐移动过去) 提高速度保证紧密贴紧边缘
|
||||
camera.speed = 100.0
|
||||
var tween = create_tween()
|
||||
tween.tween_property(camera, "limit_right", camera_rect.size.x + 250.0, 4.0)
|
||||
await animation_player.animation_finished
|
||||
await Util.wait(2.0)
|
||||
$"../DeployLayer".show()
|
||||
_hide_trap_layer()
|
||||
await Util.wait(1.5)
|
||||
animation_player.play("双手离开屏幕")
|
||||
camera.speed = 2.0
|
||||
tween = create_tween()
|
||||
tween.tween_property(camera, "limit_right", camera_rect.size.x, 2.0)
|
||||
EventManager.set_stage("c04_ghost_trapped", 3)
|
||||
await Util.wait(1.0)
|
||||
SceneManager.unlock_player()
|
||||
|
||||
|
||||
func _hide_trap_layer() -> void:
|
||||
var l = $"../鬼打墙Layer"
|
||||
var tween = create_tween()
|
||||
tween.tween_property(l, "modulate:a", 0.0, 1.0)
|
||||
tween.parallel().tween_property(l.get_node("蜡烛光1"), "energy", 0.0, 1.0)
|
||||
tween.parallel().tween_property(l.get_node("蜡烛光2"), "energy", 0.0, 1.0)
|
||||
tween.parallel().tween_property(l.get_node("蜡烛光3"), "energy", 0.0, 1.0)
|
||||
tween.parallel().tween_property(l.get_node("蜡烛光4"), "energy", 0.0, 1.0)
|
||||
tween.tween_callback(l.hide)
|
||||
|
@ -1,12 +1,17 @@
|
||||
[gd_scene load_steps=30 format=3 uid="uid://dcg8ekvhqxjjs"]
|
||||
[gd_scene load_steps=48 format=3 uid="uid://dcg8ekvhqxjjs"]
|
||||
|
||||
[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="AudioStream" uid="uid://6oc0cgc3mbqb" path="res://asset/audio/sfx/环境音/白噪音/白噪声楼道2.ogg" id="3_3myjn"]
|
||||
[ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/audio/sfx.gd" id="4_q3if8"]
|
||||
[ext_resource type="Texture2D" uid="uid://cpjd3dqri51fq" path="res://asset/art/scene/c03/s01_三楼/bg_三楼走廊.png" id="5_5htbk"]
|
||||
[ext_resource type="PackedScene" uid="uid://duvdtgkbiqtru" path="res://scene/effect/c04_鬼打墙黑手.tscn" id="5_44hgy"]
|
||||
[ext_resource type="AudioStream" uid="uid://mio13gkcrv7q" path="res://asset/audio/effect/action/bookOpen.ogg" id="5_hrm8u"]
|
||||
[ext_resource type="PackedScene" uid="uid://cw3q5pvciumil" path="res://scene/entity/interactable.tscn" id="6_a3f3m"]
|
||||
[ext_resource type="PackedScene" uid="uid://61pis75a8fdq" path="res://scene/entity/portal.tscn" id="6_dc4ka"]
|
||||
[ext_resource type="Texture2D" uid="uid://bc4lpa8aao60n" path="res://asset/art/ui/action_mark/传送.png" id="7_7u3rr"]
|
||||
[ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="7_acpio"]
|
||||
[ext_resource type="AudioStream" uid="uid://dxx5lu2j88c7x" path="res://asset/audio/sfx/交互/第二章/sfx_s03_咔嚓转头.ogg" id="7_romec"]
|
||||
[ext_resource type="Texture2D" uid="uid://dagy852q0fduh" path="res://asset/art/scene/c03/s01_三楼/e_治病木牌.png" id="8_c0fub"]
|
||||
[ext_resource type="Texture2D" uid="uid://bp84w8keuelyj" path="res://asset/art/scene/c02/s10_空房间/e_蜡烛-sheet.png" id="11_wksgj"]
|
||||
[ext_resource type="Texture2D" uid="uid://cylsq5cvhlp18" path="res://asset/art/tool/point_light.png" id="12_oyiof"]
|
||||
@ -16,6 +21,7 @@
|
||||
[ext_resource type="PackedScene" uid="uid://dqkxiqbq83cmq" path="res://scene/entity/closeup.tscn" id="15_frave"]
|
||||
[ext_resource type="Texture2D" uid="uid://b7t2sfe5ugtsc" path="res://asset/art/scene/c03/引导纸人/指引纸人3.png" id="16_3cwaw"]
|
||||
[ext_resource type="PackedScene" uid="uid://bb6rbriqc27pl" path="res://scene/ground/script/c04/s08_closeup煮肉游戏.tscn" id="16_wdxyg"]
|
||||
[ext_resource type="Script" uid="uid://0wjaho6qkg6s" path="res://manager/event_manager/event_binder.gd" id="17_eu2wc"]
|
||||
[ext_resource type="SpriteFrames" uid="uid://bbey3pnvbxqmr" path="res://asset/art/gif/c04_煮肉游戏/c04_煮肉游戏_frames.tres" id="17_mavq2"]
|
||||
[ext_resource type="Script" uid="uid://cphfob11f7atx" path="res://addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.gd" id="18_ryonc"]
|
||||
[ext_resource type="Script" uid="uid://tgupfwhdlomy" path="res://scene/ground/script/c04/s08_event陆蝶演出.gd" id="19_cl576"]
|
||||
@ -23,6 +29,14 @@
|
||||
[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="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://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="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://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://dgflh16vwwgpr" path="res://asset/art/gif/c04_鬼打墙/鬼打墙.png" id="32_hrm8u"]
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k01ve"]
|
||||
|
||||
@ -62,6 +76,21 @@ animations = [{
|
||||
"speed": 10.0
|
||||
}]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_a3f3m"]
|
||||
resource_name = "陆仁擦肩走过"
|
||||
length = 6.0
|
||||
|
||||
[sub_resource type="Animation" id="Animation_7u3rr"]
|
||||
length = 0.001
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_7u3rr"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_7u3rr"),
|
||||
&"陆仁擦肩走过": SubResource("Animation_a3f3m")
|
||||
}
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_hrm8u"]
|
||||
|
||||
[node name="S08" type="Node2D"]
|
||||
metadata/_edit_horizontal_guides_ = [98.0]
|
||||
|
||||
@ -87,6 +116,20 @@ mode = "场景背景音"
|
||||
"感应玩家操作" = false
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="Sfx墙体浮现" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="1"]
|
||||
stream = ExtResource("5_hrm8u")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_q3if8")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="鬼打墙黑手Effect" parent="Ground/AnimationPlayer" index="2" instance=ExtResource("5_44hgy")]
|
||||
|
||||
[node name="Sfx纸人咔嚓转头" type="AudioStreamPlayer" parent="Ground/AnimationPlayer" index="3"]
|
||||
stream = ExtResource("7_romec")
|
||||
bus = &"game_sfx"
|
||||
script = ExtResource("4_q3if8")
|
||||
metadata/_custom_type_script = "uid://rq6w1vuhuq1m"
|
||||
|
||||
[node name="BGSprite2D" parent="Ground" index="2"]
|
||||
light_mask = 5
|
||||
position = Vector2(0, -24)
|
||||
@ -102,36 +145,40 @@ target_scene = "c02_s06"
|
||||
target_portal = "3"
|
||||
|
||||
[node name="portal_1" parent="Ground/DeployLayer" index="2" instance=ExtResource("6_dc4ka")]
|
||||
position = Vector2(515, 12)
|
||||
debug_note = "3012"
|
||||
position = Vector2(514, 18)
|
||||
debug_note = "3012门口传送点"
|
||||
enabled = false
|
||||
portal_name = "1"
|
||||
target_scene = "c04_s04"
|
||||
target_portal = "1"
|
||||
status = "locked"
|
||||
prop_key = "prop_3012钥匙"
|
||||
|
||||
[node name="Note治病木牌" parent="Ground/DeployLayer" index="3" instance=ExtResource("7_acpio")]
|
||||
[node name="Interactable家门" parent="Ground/DeployLayer" index="3" instance=ExtResource("6_a3f3m")]
|
||||
unique_name_in_owner = true
|
||||
position = Vector2(515, -31)
|
||||
first_interact_os_key = "c04_鬼打墙_首次开门"
|
||||
matched_sign_texture = ExtResource("7_7u3rr")
|
||||
one_shot = false
|
||||
|
||||
[node name="Note治病木牌" parent="Ground/DeployLayer" index="4" instance=ExtResource("7_acpio")]
|
||||
position = Vector2(456, 47)
|
||||
texture = ExtResource("8_c0fub")
|
||||
title_filter = "c03"
|
||||
note_key = "c03_s01_门口看病牌子"
|
||||
|
||||
[node name="Note砖门" parent="Ground/DeployLayer" index="4" instance=ExtResource("7_acpio")]
|
||||
[node name="Note砖门" parent="Ground/DeployLayer" index="5" instance=ExtResource("7_acpio")]
|
||||
position = Vector2(347, 0)
|
||||
title_filter = "c03"
|
||||
note_key = "c03_s01_砖门"
|
||||
|
||||
[node name="Note杂物" parent="Ground/DeployLayer" index="5" instance=ExtResource("7_acpio")]
|
||||
[node name="Note杂物" parent="Ground/DeployLayer" index="6" instance=ExtResource("7_acpio")]
|
||||
position = Vector2(246, -2)
|
||||
title_filter = "c03"
|
||||
note_key = "c03_s01_杂物"
|
||||
|
||||
[node name="Note封住木门" parent="Ground/DeployLayer" index="6" instance=ExtResource("7_acpio")]
|
||||
[node name="Note封住木门" parent="Ground/DeployLayer" index="7" instance=ExtResource("7_acpio")]
|
||||
position = Vector2(48, 0)
|
||||
title_filter = "c03"
|
||||
note_key = "c03_s01_封住木门"
|
||||
|
||||
[node name="小蜡烛系列" type="Node2D" parent="Ground/DeployLayer" index="7"]
|
||||
[node name="小蜡烛系列" type="Node2D" parent="Ground/DeployLayer" index="8"]
|
||||
position = Vector2(0, 6)
|
||||
|
||||
[node name="小蜡烛" type="AnimatedSprite2D" parent="Ground/DeployLayer/小蜡烛系列"]
|
||||
@ -204,7 +251,7 @@ blend_mode = 2
|
||||
texture = ExtResource("12_oyiof")
|
||||
texture_scale = 0.3
|
||||
|
||||
[node name="煤油灯2" type="Sprite2D" parent="Ground/DeployLayer" index="8"]
|
||||
[node name="煤油灯2" type="Sprite2D" parent="Ground/DeployLayer" index="9"]
|
||||
position = Vector2(469, 2)
|
||||
texture = ExtResource("13_62482")
|
||||
|
||||
@ -222,17 +269,53 @@ energy = 2.0
|
||||
blend_mode = 2
|
||||
texture = ExtResource("15_4ne8o")
|
||||
|
||||
[node name="纸人" type="Sprite2D" parent="Ground/DeployLayer" index="9"]
|
||||
[node name="纸人" type="Sprite2D" parent="Ground/DeployLayer" index="10"]
|
||||
position = Vector2(637, 25)
|
||||
scale = Vector2(0.8, 0.8)
|
||||
texture = ExtResource("16_3cwaw")
|
||||
flip_h = true
|
||||
|
||||
[node name="Closeup煮肉游戏" parent="Ground/DeployLayer" index="10" instance=ExtResource("15_frave")]
|
||||
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/纸人"]
|
||||
script = ExtResource("17_eu2wc")
|
||||
updater_event = &"c04_ghost_trapped"
|
||||
updater_mode = "shower"
|
||||
updater_ease_duration = 0.0
|
||||
updater_stages = Array[int]([0])
|
||||
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
|
||||
|
||||
[node name="排队纸人" type="Sprite2D" parent="Ground/DeployLayer" index="11"]
|
||||
position = Vector2(655, 25)
|
||||
scale = Vector2(0.8, 0.8)
|
||||
texture = ExtResource("30_44hgy")
|
||||
flip_h = true
|
||||
|
||||
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人"]
|
||||
script = ExtResource("17_eu2wc")
|
||||
updater_event = &"c04_ghost_trapped"
|
||||
updater_mode = "shower"
|
||||
updater_ease_duration = 0.0
|
||||
updater_stages = Array[int]([3])
|
||||
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
|
||||
|
||||
[node name="排队纸人_歪头" type="Sprite2D" parent="Ground/DeployLayer" index="12"]
|
||||
position = Vector2(655, 25)
|
||||
scale = Vector2(0.8, 0.8)
|
||||
texture = ExtResource("22_camrr")
|
||||
flip_h = true
|
||||
|
||||
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/排队纸人_歪头"]
|
||||
script = ExtResource("17_eu2wc")
|
||||
updater_event = &"c04_ghost_trapped"
|
||||
updater_mode = "shower"
|
||||
updater_ease_duration = 0.0
|
||||
updater_stages = Array[int]([4])
|
||||
metadata/_custom_type_script = "uid://0wjaho6qkg6s"
|
||||
|
||||
[node name="Closeup煮肉游戏" parent="Ground/DeployLayer" index="13" instance=ExtResource("15_frave")]
|
||||
position = Vector2(126, 12)
|
||||
packed_scene = ExtResource("16_wdxyg")
|
||||
|
||||
[node name="Pro灶台" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="11"]
|
||||
[node name="Pro灶台" type="AnimatedSprite2D" parent="Ground/DeployLayer" index="14"]
|
||||
position = Vector2(124.5, 28.5)
|
||||
sprite_frames = ExtResource("17_mavq2")
|
||||
animation = &"三楼走廊互动动画_灶台冒烟烧火"
|
||||
@ -241,7 +324,7 @@ frame_progress = 0.567797
|
||||
script = ExtResource("18_ryonc")
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="Event陆蝶演出" type="Node2D" parent="Ground/DeployLayer" index="12"]
|
||||
[node name="Event陆蝶演出" type="Node2D" parent="Ground/DeployLayer" index="15"]
|
||||
script = ExtResource("19_cl576")
|
||||
event_name = &"c04_ghost_trapped"
|
||||
event_stages = Array[int]([0])
|
||||
@ -249,63 +332,101 @@ pre_event_name = &"current_chapter_stage"
|
||||
pre_event_stages = Array[int]([4])
|
||||
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_7u3rr")
|
||||
}
|
||||
|
||||
[node name="Ambush陆蝶演出" parent="Ground/DeployLayer/Event陆蝶演出" instance=ExtResource("20_cl576")]
|
||||
position = Vector2(535, 31)
|
||||
enter_affected_by_visibility = true
|
||||
one_shot = false
|
||||
|
||||
[node name="墙上的字" type="Sprite2D" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
texture = ExtResource("21_2rmvt")
|
||||
|
||||
[node name="Pro陆蝶" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
position = Vector2(370, 26)
|
||||
sprite_frames = ExtResource("22_a3f3m")
|
||||
animation = &"陆仁行走1"
|
||||
script = ExtResource("18_ryonc")
|
||||
action_configs = Array[Dictionary]([{
|
||||
"animation_intro": &"陆仁坐下",
|
||||
&"animation_next": "陆仁艰难站起",
|
||||
"animation_wait_time": 0.0,
|
||||
"intro_loop": 1
|
||||
}, {
|
||||
"animation_intro": "陆仁艰难站起",
|
||||
&"animation_next": "陆仁行走",
|
||||
"animation_wait_time": 0.0,
|
||||
"intro_loop": 1
|
||||
}, {
|
||||
"animation_intro": "陆仁行走",
|
||||
&"animation_next": "陆仁回头",
|
||||
"animation_wait_time": 0.0,
|
||||
"intro_loop": 1
|
||||
}])
|
||||
move_configs = Array[Dictionary]([{
|
||||
"animation": "陆仁行走1",
|
||||
"animation_next": "陆仁回头",
|
||||
"duration": 1e+07,
|
||||
"movement_x": 80.0,
|
||||
"velocity": Vector2(70, 0)
|
||||
}, {
|
||||
"animation": "陆仁回头",
|
||||
"animation_next": "陆仁行走2",
|
||||
"duration": 1e+07,
|
||||
"movement_x": 210.0,
|
||||
"velocity": Vector2(70, 0)
|
||||
}, {
|
||||
"animation": &"陆仁行走2",
|
||||
"animation_next": "",
|
||||
"duration": 1e+07,
|
||||
"movement_x": 300.0,
|
||||
"velocity": Vector2(70, 0)
|
||||
}])
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="小小蝶" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event陆蝶演出/Pro陆蝶"]
|
||||
[node name="小小小蝶" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
visible = false
|
||||
position = Vector2(349, 0)
|
||||
sprite_frames = ExtResource("22_a3f3m")
|
||||
animation = &"小小蝶"
|
||||
autoplay = "小小蝶"
|
||||
script = ExtResource("18_ryonc")
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="Pro陆蝶" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
visible = false
|
||||
position = Vector2(349, 0)
|
||||
sprite_frames = ExtResource("22_a3f3m")
|
||||
animation = &"小小小蝶骑在陆仁脖子上擦墙上的涂鸦"
|
||||
script = ExtResource("18_ryonc")
|
||||
autostart = false
|
||||
move_configs = Array[Dictionary]([{
|
||||
"animation": "陆仁行走回头",
|
||||
"animation_next": "陆仁停在家门口",
|
||||
"duration": 1e+07,
|
||||
"movement_x": 170.0,
|
||||
"velocity": Vector2(70, 0)
|
||||
}])
|
||||
debug_mov_animation = "陆仁行走回头"
|
||||
metadata/_custom_type_script = "uid://cphfob11f7atx"
|
||||
|
||||
[node name="PointLight2D" type="PointLight2D" parent="Ground/DeployLayer/Event陆蝶演出"]
|
||||
visible = false
|
||||
position = Vector2(371, 2)
|
||||
energy = 0.6
|
||||
texture = ExtResource("23_a3f3m")
|
||||
|
||||
[node name="鬼打墙两侧纸人" type="Node2D" parent="Ground/DeployLayer" index="16"]
|
||||
visible = false
|
||||
|
||||
[node name="VisibleStaticBody" type="StaticBody2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
position = Vector2(428, 41)
|
||||
collision_layer = 2
|
||||
collision_mask = 0
|
||||
script = ExtResource("27_w5p20")
|
||||
metadata/_custom_type_script = "uid://86rvkbnxd2ti"
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/DeployLayer/鬼打墙两侧纸人/VisibleStaticBody"]
|
||||
shape = SubResource("RectangleShape2D_hrm8u")
|
||||
|
||||
[node name="VisibleStaticBody2" type="StaticBody2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
position = Vector2(677, 38)
|
||||
collision_layer = 2
|
||||
collision_mask = 0
|
||||
script = ExtResource("27_w5p20")
|
||||
metadata/_custom_type_script = "uid://86rvkbnxd2ti"
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ground/DeployLayer/鬼打墙两侧纸人/VisibleStaticBody2"]
|
||||
shape = SubResource("RectangleShape2D_hrm8u")
|
||||
|
||||
[node name="纸人1" type="Sprite2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
position = Vector2(428, 52)
|
||||
texture = ExtResource("28_eu2wc")
|
||||
flip_h = true
|
||||
|
||||
[node name="纸人2" type="Sprite2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
position = Vector2(397, 18)
|
||||
texture = ExtResource("29_lliag")
|
||||
flip_h = true
|
||||
|
||||
[node name="纸人3" type="Sprite2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
position = Vector2(626, 24)
|
||||
texture = ExtResource("16_3cwaw")
|
||||
|
||||
[node name="纸人4" type="Sprite2D" parent="Ground/DeployLayer/鬼打墙两侧纸人"]
|
||||
z_index = 6
|
||||
position = Vector2(574, 57)
|
||||
texture = ExtResource("30_44hgy")
|
||||
flip_h = true
|
||||
|
||||
[node name="Ambush不想听他们的" parent="Ground/DeployLayer/鬼打墙两侧纸人" instance=ExtResource("20_cl576")]
|
||||
position = Vector2(657, 44)
|
||||
enter_affected_by_visibility = true
|
||||
one_shot = false
|
||||
cooldown_time = 1.0
|
||||
hook_os_key = "c04_鬼打墙_走向楼梯"
|
||||
|
||||
[node name="MainPlayer" parent="Ground" index="5"]
|
||||
position = Vector2(34, 98)
|
||||
catty_light_energy = 0.5
|
||||
@ -326,4 +447,76 @@ visible = false
|
||||
energy = 0.8
|
||||
blend_mode = 1
|
||||
|
||||
[node name="鬼打墙Layer" type="Node2D" parent="Ground"]
|
||||
visible = false
|
||||
position = Vector2(185, 6)
|
||||
|
||||
[node name="BG" type="Sprite2D" parent="Ground/鬼打墙Layer"]
|
||||
unique_name_in_owner = true
|
||||
light_mask = 5
|
||||
z_index = -5
|
||||
position = Vector2(0, -24)
|
||||
texture = ExtResource("32_hrm8u")
|
||||
centered = false
|
||||
offset = Vector2(0, -100)
|
||||
|
||||
[node name="砖墙1" type="Sprite2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(282, -7)
|
||||
texture = ExtResource("32_44hgy")
|
||||
|
||||
[node name="砖墙2" type="Sprite2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(368, -8)
|
||||
texture = ExtResource("32_44hgy")
|
||||
|
||||
[node name="砖墙3" type="Sprite2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(451, -8)
|
||||
texture = ExtResource("32_44hgy")
|
||||
|
||||
[node name="Ambush门1" parent="Ground/鬼打墙Layer" instance=ExtResource("20_cl576")]
|
||||
position = Vector2(163, -27)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door1"
|
||||
|
||||
[node name="Ambush门2" parent="Ground/鬼打墙Layer" instance=ExtResource("20_cl576")]
|
||||
position = Vector2(249, -26)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door2"
|
||||
|
||||
[node name="Ambush门3" parent="Ground/鬼打墙Layer" instance=ExtResource("20_cl576")]
|
||||
position = Vector2(330, -26)
|
||||
trigger_mode = "interact"
|
||||
one_shot = false
|
||||
hook_method = "ambush_door3"
|
||||
|
||||
[node name="蜡烛光1" type="PointLight2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(122, 36)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("23_a3f3m")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光2" type="PointLight2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(206, 35)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("23_a3f3m")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光3" type="PointLight2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(290, 36)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("23_a3f3m")
|
||||
texture_scale = 0.4
|
||||
|
||||
[node name="蜡烛光4" type="PointLight2D" parent="Ground/鬼打墙Layer"]
|
||||
position = Vector2(373, 35)
|
||||
color = Color(0.989374, 0.782717, 0.696771, 1)
|
||||
energy = 0.5
|
||||
texture = ExtResource("23_a3f3m")
|
||||
texture_scale = 0.4
|
||||
|
||||
[editable path="Ground"]
|
||||
[editable path="Ground/AnimationPlayer/鬼打墙黑手Effect"]
|
||||
|
@ -26,9 +26,41 @@ func _on_pre_stage_updated() -> void:
|
||||
func _on_stage_updated() -> void:
|
||||
pass
|
||||
|
||||
@onready var animation_player = $"AnimationPlayer" as AnimationPlayer
|
||||
@onready var light = $"PointLight2D" as PointLight2D
|
||||
@onready var luren = $"Pro陆蝶" as ProAnimatedSprite2D
|
||||
@onready var xxxdie = $"小小小蝶" as ProAnimatedSprite2D
|
||||
|
||||
func _start_show() -> void:
|
||||
SceneManager.lock_player()
|
||||
await SceneManager.pop_os_with_str("c04_鬼打墙_开始os")
|
||||
|
||||
light.show()
|
||||
var energy = light.energy
|
||||
light.energy = 0.0
|
||||
luren.show()
|
||||
luren.modulate.a = 0.0
|
||||
var tween = create_tween()
|
||||
tween.tween_property(luren, "modulate:a", 1.0, 1.0)
|
||||
tween.parallel().tween_property(light, "energy", energy, 1.0)
|
||||
await tween.finished
|
||||
luren.play("小小小蝶骑在陆仁脖子上擦墙上的涂鸦")
|
||||
# DialogueManager.show_dialogue_balloon(GlobalConfig.DIALOG_C04, "")
|
||||
# await DialogueManager.dialogue_ended
|
||||
await Util.wait(3.0)
|
||||
luren.play("陆仁坐下")
|
||||
await luren.animation_finished
|
||||
xxxdie.show()
|
||||
luren.play("陆仁艰难站起")
|
||||
await luren.animation_finished
|
||||
luren.play("陆仁行走回头")
|
||||
await luren.animation_changed
|
||||
tween = create_tween()
|
||||
tween.tween_interval(0.5)
|
||||
tween.tween_property(luren, "modulate:a", 0.0, 1.5)
|
||||
tween.parallel().tween_property(xxxdie, "modulate:a", 0.0, 1.0)
|
||||
await tween.finished
|
||||
SceneManager.unlock_player()
|
||||
|
||||
|
||||
func speak_dialogue():
|
||||
SceneManager.pop_debug_dialog_info("对白", "小蝶: 爸爸...")
|
||||
|
Loading…
Reference in New Issue
Block a user