diff --git a/asset/art/gif/c03_小蝶询问瞎子/c03_小蝶询问瞎子_frames.tres b/asset/art/gif/c03_小蝶询问瞎子/c03_小蝶询问瞎子_frames.tres index e370acc8..c848b81e 100644 --- a/asset/art/gif/c03_小蝶询问瞎子/c03_小蝶询问瞎子_frames.tres +++ b/asset/art/gif/c03_小蝶询问瞎子/c03_小蝶询问瞎子_frames.tres @@ -140,7 +140,7 @@ animations = [{ "duration": 30.0, "texture": ExtResource("29_gcjaa") }], -"loop": true, +"loop": false, "name": &"瞎子_咳嗽吐血", "speed": 30.0 }, { @@ -210,7 +210,7 @@ animations = [{ "duration": 1.0, "texture": ExtResource("49_kpa08") }], -"loop": true, +"loop": false, "name": &"瞎子_抽烟", "speed": 6.0 }] diff --git a/manager/event_manager/event2d.gd b/manager/event_manager/event2d.gd index 4db30646..7b849e0f 100644 --- a/manager/event_manager/event2d.gd +++ b/manager/event_manager/event2d.gd @@ -76,9 +76,7 @@ func _on_global_stage_updated(e: StringName, s: int): if e == pre_event_name: pre_updated = prev_stage != s prev_stage = s - print( - "[Event2D] Pre-event stage updated: %s, stage: %s" % [pre_event_name, prev_stage] - ) + print("[Event2D] Pre-event stage updated: %s, stage: %s" % [pre_event_name, prev_stage]) elif e == event_name: updated = stage != s stage = s @@ -151,16 +149,19 @@ func _copy_getter(): func _auto_memo() -> void: - var memo_str = "HideIfOnStage:\n" - if event_name != "" and event_stages: - memo_str += event_name - memo_str += "=" - memo_str += "|".join(event_stages) - memo_str += "\n" - if pre_event_name != "" and pre_event_stages: + var memo_str := "" + if pre_event_name != &"" and pre_event_mode != "none": + memo_str += "当前置事件[" memo_str += pre_event_name - memo_str += "=" - memo_str += "|".join(pre_event_stages) + memo_str += "=" if pre_event_mode == "show" else "!=" + memo_str += "|".join(pre_event_stages) + "]" + if event_name != &"" and event_mode != "none": + memo_str += "" if memo_str.is_empty() else "\n并且" + memo_str += "当事件[" + memo_str += event_name + memo_str += "=" if event_mode == "show" else "!=" + memo_str += "|".join(event_stages) + "]时" + memo_str += "" if memo_str.is_empty() else "显示该节点" var existing_lines = event_memo.split("\n") # 保留 # 开头的 line var kept_lines = [] diff --git a/manager/event_manager/event_binder.gd b/manager/event_manager/event_binder.gd index c40fb0e5..899a1147 100644 --- a/manager/event_manager/event_binder.gd +++ b/manager/event_manager/event_binder.gd @@ -169,11 +169,11 @@ func _auto_memo() -> void: if updater_event != "": memo_str = updater_event memo_str += "=" if updater_stage_mode == "include" else "!=" - memo_str += "|".join(updater_stages) + " 时" + memo_str += "|".join(updater_stages) + " 时," memo_str += "显示" if updater_mode == "shower" else "启用" - memo_str += " [" + parent_name + "]\n" + memo_str += ": [" + parent_name + "]\n" if trigger_event != "" and trigger_mode != "none": - memo_str += "[" + parent_name + "] " + trigger_mode + "时" + memo_str += "[" + parent_name + "] " + trigger_mode + " 时: " memo_str += trigger_event + "=" + str(trigger_stage) memo_str += "(greater)" if trigger_set_stage_if_greater else "(any)" var existing_lines = memo.split("\n") diff --git a/scene/ground/scene/c03/s01_三楼.gd b/scene/ground/scene/c03/s01_三楼.gd index 42726ae2..5673f45f 100644 --- a/scene/ground/scene/c03/s01_三楼.gd +++ b/scene/ground/scene/c03/s01_三楼.gd @@ -39,5 +39,4 @@ func eavesdrop_luren() -> void: SceneManager.player_action(14, true) await Util.wait(1.5) await SceneManager.pop_os_with_str("c03_偷听陆仁对话后") - ArchiveManager.set_global_entry(&"c03_eavesdrop_luren", true) SceneManager.unlock_player() diff --git a/scene/ground/scene/c03/s01_三楼.tscn b/scene/ground/scene/c03/s01_三楼.tscn index 9ebebd13..83d312ca 100644 --- a/scene/ground/scene/c03/s01_三楼.tscn +++ b/scene/ground/scene/c03/s01_三楼.tscn @@ -223,11 +223,9 @@ metadata/_custom_type_script = "uid://0wjaho6qkg6s" [node name="Event2D放肉后" type="Node2D" parent="Ground/DeployLayer" index="4"] script = ExtResource("7_obrgj") -event = &"c03_s01_meat_put" -hide_if_on_stage = Array[int]([0, 2]) -event_memo = "c03_s01_meat_put=0|2" event_name = &"c03_s01_meat_put" event_stages = Array[int]([1]) +event_memo = "c03_s01_meat_put=0|2" metadata/_custom_type_script = "uid://bkkiyk5jkdw4d" [node name="窗口闪动" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event2D放肉后"] @@ -249,7 +247,7 @@ packed_scene = ExtResource("7_d27sg") [node name="EventBinder" type="Node" parent="Ground/DeployLayer/Event2D放肉后/CloseupDemo公告"] script = ExtResource("6_yaa68") -memo = "release_stage=0 时显示 [公告] +memo = "release_stage=0 时,显示: [公告] " updater_event = &"release_stage" updater_mode = "shower" @@ -360,9 +358,11 @@ hook_method = "eavesdrop_luren" [node name="EventBinder" type="Node" parent="Ground/DeployLayer/Ambush偷听陆仁"] script = ExtResource("6_yaa68") -memo = "c03_s01_meat_put=1 时启用 [偷听陆仁] -" +memo = "c03_s01_meat_put=1 时,启用: [偷听陆仁] +[偷听陆仁] triggered 时: c03_偷听并邀请小蝶=1(greater)" updater_event = &"c03_s01_meat_put" +trigger_event = &"c03_偷听并邀请小蝶" +trigger_mode = "triggered" metadata/_custom_type_script = "uid://0wjaho6qkg6s" [node name="MainPlayer" parent="Ground" index="5"] diff --git a/scene/ground/scene/c03/s02_瞎子新卧室.tscn b/scene/ground/scene/c03/s02_瞎子新卧室.tscn index a479bdfa..74bec00d 100644 --- a/scene/ground/scene/c03/s02_瞎子新卧室.tscn +++ b/scene/ground/scene/c03/s02_瞎子新卧室.tscn @@ -1,14 +1,16 @@ -[gd_scene load_steps=15 format=3 uid="uid://ctwy1ubhm68la"] +[gd_scene load_steps=17 format=3 uid="uid://ctwy1ubhm68la"] [ext_resource type="PackedScene" uid="uid://dayyx4jerj7io" path="res://scene/ground/ground.tscn" id="1_jad6f"] -[ext_resource type="Script" uid="uid://tk4wg0i4payx" path="res://scene/ground/scene/c03/s02_瞎子新卧室.gd" id="2_y504i"] +[ext_resource type="Script" path="res://scene/ground/scene/c03/s02_瞎子新卧室.gd" id="2_y504i"] [ext_resource type="Script" uid="uid://cpejxlfni6n52" path="res://manager/audio_manager/vibe_sfx.gd" id="3_kchgf"] [ext_resource type="Texture2D" uid="uid://vc2hn6t5bedg" path="res://asset/art/scene/c03/s02_瞎子新卧室/bg_瞎子新卧室.png" id="4_hehhg"] +[ext_resource type="Texture2D" uid="uid://7ay1ttob8qwm" path="res://asset/art/scene/c02/s08_瞎子卧室/e_床板.png" id="5_xifhb"] [ext_resource type="Texture2D" uid="uid://bgtxwxerl2dxh" path="res://asset/art/scene/c02/s08_瞎子卧室/十字架.png" id="6_hehhg"] [ext_resource type="Texture2D" uid="uid://bmid3iu2ch35o" path="res://asset/art/scene/c02/s08_瞎子卧室/八卦图.png" id="7_u55tr"] [ext_resource type="Texture2D" uid="uid://vqyhgyka3sfo" path="res://asset/art/scene/c02/s08_瞎子卧室/瞎子卧室前景.png" id="8_hehhg"] [ext_resource type="Script" uid="uid://n56a07gyjq1u" path="res://scene/ground/script/c03/s02_event_2d偷听陆仁小蝶对话后.gd" id="8_pixqd"] -[ext_resource type="Texture2D" uid="uid://ltlwibpxcvmv" path="res://asset/art/scene/c03/s02_瞎子新卧室/一沓寻人启事.png" id="9_wdjh5"] +[ext_resource type="SpriteFrames" uid="uid://div8kcn7gu78r" path="res://asset/art/gif/c03_小蝶询问瞎子/c03_小蝶询问瞎子_frames.tres" id="10_2hv3f"] +[ext_resource type="PackedScene" uid="uid://b50n0hvs4yh75" path="res://addons/property-inspector/pro_animation_sprite2d/pro_animated_sprite.tscn" id="10_jad6f"] [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="10_v3seo"] [sub_resource type="Animation" id="Animation_k01ve"] @@ -136,6 +138,12 @@ light_mask = 5 position = Vector2(0, -2) texture = ExtResource("4_hehhg") +[node name="床头板" type="Sprite2D" parent="Ground/BGSprite2D" index="0"] +z_index = 1 +z_as_relative = false +position = Vector2(264.5, 69) +texture = ExtResource("5_xifhb") + [node name="portal_left" parent="Ground/DeployLayer" index="0"] position = Vector2(67, 13) target_scene = "c02_s06" @@ -171,16 +179,20 @@ texture = ExtResource("7_u55tr") [node name="Event2D偷听陆仁对话后" type="Node2D" parent="Ground/DeployLayer" index="4"] script = ExtResource("8_pixqd") -event = &"c03_invite_xchan_supper" -pre_event = &"c03_eavesdrop_luren" -hide_if_pre_on_stage = Array[int]([0]) -event_memo = "HideIfOnStage: -c03_eavesdrop_luren=0" +event_name = &"c03_偷听并邀请小蝶" +event_stages = Array[int]([1]) +event_memo = "当事件[c03_偷听并邀请小蝶=1]时显示该节点" metadata/_custom_type_script = "uid://bkkiyk5jkdw4d" -[node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/Event2D偷听陆仁对话后"] -position = Vector2(200, -14) -texture = ExtResource("9_wdjh5") +[node name="瞎子抽烟" parent="Ground/DeployLayer/Event2D偷听陆仁对话后" instance=ExtResource("10_jad6f")] +position = Vector2(229, 39) +sprite_frames = ExtResource("10_2hv3f") +animation = &"瞎子_咳嗽吐血" +frame = 28 +action_configs = Array[Dictionary]([{ +&"animation_intro": "瞎子_抽烟", +&"animation_next": "瞎子_坐拿烟_左呼吸" +}]) [node name="MainPlayer" parent="Ground" index="5"] position = Vector2(63, 95) diff --git a/scene/ground/script/c03/s02_event_2d偷听陆仁小蝶对话后.gd b/scene/ground/script/c03/s02_event_2d偷听陆仁小蝶对话后.gd index 2e3376d8..700bc273 100644 --- a/scene/ground/script/c03/s02_event_2d偷听陆仁小蝶对话后.gd +++ b/scene/ground/script/c03/s02_event_2d偷听陆仁小蝶对话后.gd @@ -10,6 +10,7 @@ func _ready() -> void: if Engine.is_editor_hint(): return + func _on_global_stage_updated(e: StringName, s: int): super._on_global_stage_updated(e, s) @@ -17,7 +18,7 @@ func _on_global_stage_updated(e: StringName, s: int): func _on_ground_ready(ground: Ground2D): if stage == 0: # 邀请小蝉晚饭 - EventManager.set_stage(event, 1) + EventManager.set_stage(event_name, 1) func _on_pre_stage_updated():