@tool extends Event2D # var prev_stage := 0 # var stage := 0 func _ready() -> void: super._ready() if Engine.is_editor_hint(): return func _on_global_stage_updated(e: StringName, s: int): super._on_global_stage_updated(e, s) func _on_ground_ready(_ground: Ground2D): paperman = $"../左侧纸人" var ambush = $"Ambush疯子慌张跑开" as Ambush2D if stage == 0: # 重置 ambush ambush.reset_counter() ambush.triggered.connect(_on_ambush_triggered) _on_stage_updated() func _on_ambush_triggered() -> void: SceneManager.lock_player() var pro_sprite = $"Pro疯子慌张跑开" pro_sprite.play("疯子_慌张转身") #TODO SceneManager.pop_debug_dialog_info("音效", "疯子跑开") await Util.wait(6.0) EventManager.set_stage(event_name, 1) SceneManager.unlock_player() var paperman:AnimatedSprite2D func _on_pre_stage_updated(): pass func _on_stage_updated(): if stage == 1: paperman.visible = true if ArchiveManager.get_global_value("c03_s06_paperman_knocked"): paperman.frame = 1 $"../portal_left".before_pre_transport_wait.connect(_on_left_poortal_interacted) # 显示纸人的时候阻塞通道 # $"../portal_left".enabled = false else: $"../左侧纸人".visible = false # $"../portal_left".enabled = true func _on_left_poortal_interacted()-> void: # 0 正常; 1 歪头 if not ArchiveManager.get_global_value("c03_s06_paperman_knocked"): EventManager.set_stage_if_greater("handnote_c03_what_puppets", 1) ArchiveManager.set_global_entry("c03_s06_paperman_knocked", true) $"Sfx纸人咔嚓转头".global_play() paperman.frame = 1