xiandie/scene/ground/script/c02/s06_event_2d疯子跑开.gd

66 lines
1.6 KiB
GDScript3
Raw Normal View History

@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 = $"../左侧纸人"
2025-07-15 07:43:39 +00:00
var ambush = $"Ambush疯子慌张跑开" as Ambush2D
if stage == 0:
# 重置 ambush
ambush.reset_counter()
ambush.triggered.connect(_on_ambush_triggered)
2025-07-15 07:43:39 +00:00
_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():
2025-07-15 07:43:39 +00:00
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)
2025-07-15 07:43:39 +00:00
# 显示纸人的时候阻塞通道
2025-08-05 09:38:56 +00:00
# $"../portal_left".enabled = false
2025-07-15 07:43:39 +00:00
else:
$"../左侧纸人".visible = false
2025-08-05 09:38:56 +00:00
# $"../portal_left".enabled = true
func _on_left_poortal_interacted()-> void:
# 0 正常; 1 歪头
if not ArchiveManager.get_global_value("c03_s06_paperman_knocked"):
2025-08-13 10:42:05 +00:00
EventManager.set_stage_if_greater("handnote_c03_what_puppets", 1)
ArchiveManager.set_global_entry("c03_s06_paperman_knocked", true)
$"Sfx纸人咔嚓转头".global_play()
2025-08-13 10:42:05 +00:00
paperman.frame = 1