event 节点 memo 优化

This commit is contained in:
cakipaul 2025-07-07 19:01:12 +08:00
parent d391aa9ac9
commit 4ee0350dfd
7 changed files with 49 additions and 36 deletions

View File

@ -140,7 +140,7 @@ animations = [{
"duration": 30.0, "duration": 30.0,
"texture": ExtResource("29_gcjaa") "texture": ExtResource("29_gcjaa")
}], }],
"loop": true, "loop": false,
"name": &"瞎子_咳嗽吐血", "name": &"瞎子_咳嗽吐血",
"speed": 30.0 "speed": 30.0
}, { }, {
@ -210,7 +210,7 @@ animations = [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("49_kpa08") "texture": ExtResource("49_kpa08")
}], }],
"loop": true, "loop": false,
"name": &"瞎子_抽烟", "name": &"瞎子_抽烟",
"speed": 6.0 "speed": 6.0
}] }]

View File

@ -76,9 +76,7 @@ func _on_global_stage_updated(e: StringName, s: int):
if e == pre_event_name: if e == pre_event_name:
pre_updated = prev_stage != s pre_updated = prev_stage != s
prev_stage = s prev_stage = s
print( print("[Event2D] Pre-event stage updated: %s, stage: %s" % [pre_event_name, prev_stage])
"[Event2D] Pre-event stage updated: %s, stage: %s" % [pre_event_name, prev_stage]
)
elif e == event_name: elif e == event_name:
updated = stage != s updated = stage != s
stage = s stage = s
@ -151,16 +149,19 @@ func _copy_getter():
func _auto_memo() -> void: func _auto_memo() -> void:
var memo_str = "HideIfOnStage:\n" var memo_str := ""
if event_name != "" and event_stages: if pre_event_name != &"" and pre_event_mode != "none":
memo_str += event_name memo_str += "当前置事件["
memo_str += "="
memo_str += "|".join(event_stages)
memo_str += "\n"
if pre_event_name != "" and pre_event_stages:
memo_str += pre_event_name memo_str += pre_event_name
memo_str += "=" memo_str += "=" if pre_event_mode == "show" else "!="
memo_str += "|".join(pre_event_stages) 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") var existing_lines = event_memo.split("\n")
# 保留 # 开头的 line # 保留 # 开头的 line
var kept_lines = [] var kept_lines = []

View File

@ -169,11 +169,11 @@ func _auto_memo() -> void:
if updater_event != "": if updater_event != "":
memo_str = updater_event memo_str = updater_event
memo_str += "=" if updater_stage_mode == "include" else "!=" 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 += "显示" if updater_mode == "shower" else "启用"
memo_str += " [" + parent_name + "]\n" memo_str += ": [" + parent_name + "]\n"
if trigger_event != "" and trigger_mode != "none": 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 += trigger_event + "=" + str(trigger_stage)
memo_str += "(greater)" if trigger_set_stage_if_greater else "(any)" memo_str += "(greater)" if trigger_set_stage_if_greater else "(any)"
var existing_lines = memo.split("\n") var existing_lines = memo.split("\n")

View File

@ -39,5 +39,4 @@ func eavesdrop_luren() -> void:
SceneManager.player_action(14, true) SceneManager.player_action(14, true)
await Util.wait(1.5) await Util.wait(1.5)
await SceneManager.pop_os_with_str("c03_偷听陆仁对话后") await SceneManager.pop_os_with_str("c03_偷听陆仁对话后")
ArchiveManager.set_global_entry(&"c03_eavesdrop_luren", true)
SceneManager.unlock_player() SceneManager.unlock_player()

View File

@ -223,11 +223,9 @@ metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="Event2D放肉后" type="Node2D" parent="Ground/DeployLayer" index="4"] [node name="Event2D放肉后" type="Node2D" parent="Ground/DeployLayer" index="4"]
script = ExtResource("7_obrgj") 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_name = &"c03_s01_meat_put"
event_stages = Array[int]([1]) event_stages = Array[int]([1])
event_memo = "c03_s01_meat_put=0|2"
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d" metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
[node name="窗口闪动" type="AnimatedSprite2D" parent="Ground/DeployLayer/Event2D放肉后"] [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公告"] [node name="EventBinder" type="Node" parent="Ground/DeployLayer/Event2D放肉后/CloseupDemo公告"]
script = ExtResource("6_yaa68") script = ExtResource("6_yaa68")
memo = "release_stage=0 时显示 [公告] memo = "release_stage=0 时,显示: [公告]
" "
updater_event = &"release_stage" updater_event = &"release_stage"
updater_mode = "shower" updater_mode = "shower"
@ -360,9 +358,11 @@ hook_method = "eavesdrop_luren"
[node name="EventBinder" type="Node" parent="Ground/DeployLayer/Ambush偷听陆仁"] [node name="EventBinder" type="Node" parent="Ground/DeployLayer/Ambush偷听陆仁"]
script = ExtResource("6_yaa68") 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" updater_event = &"c03_s01_meat_put"
trigger_event = &"c03_偷听并邀请小蝶"
trigger_mode = "triggered"
metadata/_custom_type_script = "uid://0wjaho6qkg6s" metadata/_custom_type_script = "uid://0wjaho6qkg6s"
[node name="MainPlayer" parent="Ground" index="5"] [node name="MainPlayer" parent="Ground" index="5"]

View File

@ -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="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="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://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://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://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="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="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"] [ext_resource type="PackedScene" uid="uid://jr1yd46wm5je" path="res://scene/entity/note.tscn" id="10_v3seo"]
[sub_resource type="Animation" id="Animation_k01ve"] [sub_resource type="Animation" id="Animation_k01ve"]
@ -136,6 +138,12 @@ light_mask = 5
position = Vector2(0, -2) position = Vector2(0, -2)
texture = ExtResource("4_hehhg") 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"] [node name="portal_left" parent="Ground/DeployLayer" index="0"]
position = Vector2(67, 13) position = Vector2(67, 13)
target_scene = "c02_s06" target_scene = "c02_s06"
@ -171,16 +179,20 @@ texture = ExtResource("7_u55tr")
[node name="Event2D偷听陆仁对话后" type="Node2D" parent="Ground/DeployLayer" index="4"] [node name="Event2D偷听陆仁对话后" type="Node2D" parent="Ground/DeployLayer" index="4"]
script = ExtResource("8_pixqd") script = ExtResource("8_pixqd")
event = &"c03_invite_xchan_supper" event_name = &"c03_偷听并邀请小蝶"
pre_event = &"c03_eavesdrop_luren" event_stages = Array[int]([1])
hide_if_pre_on_stage = Array[int]([0]) event_memo = "当事件[c03_偷听并邀请小蝶=1]时显示该节点"
event_memo = "HideIfOnStage:
c03_eavesdrop_luren=0"
metadata/_custom_type_script = "uid://bkkiyk5jkdw4d" metadata/_custom_type_script = "uid://bkkiyk5jkdw4d"
[node name="Sprite2D" type="Sprite2D" parent="Ground/DeployLayer/Event2D偷听陆仁对话后"] [node name="瞎子抽烟" parent="Ground/DeployLayer/Event2D偷听陆仁对话后" instance=ExtResource("10_jad6f")]
position = Vector2(200, -14) position = Vector2(229, 39)
texture = ExtResource("9_wdjh5") sprite_frames = ExtResource("10_2hv3f")
animation = &"瞎子_咳嗽吐血"
frame = 28
action_configs = Array[Dictionary]([{
&"animation_intro": "瞎子_抽烟",
&"animation_next": "瞎子_坐拿烟_左呼吸"
}])
[node name="MainPlayer" parent="Ground" index="5"] [node name="MainPlayer" parent="Ground" index="5"]
position = Vector2(63, 95) position = Vector2(63, 95)

View File

@ -10,6 +10,7 @@ func _ready() -> void:
if Engine.is_editor_hint(): if Engine.is_editor_hint():
return return
func _on_global_stage_updated(e: StringName, s: int): func _on_global_stage_updated(e: StringName, s: int):
super._on_global_stage_updated(e, s) 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): func _on_ground_ready(ground: Ground2D):
if stage == 0: if stage == 0:
# 邀请小蝉晚饭 # 邀请小蝉晚饭
EventManager.set_stage(event, 1) EventManager.set_stage(event_name, 1)
func _on_pre_stage_updated(): func _on_pre_stage_updated():