xiandie/scene/ground/scene/c02/s02_animation.gd

60 lines
1.4 KiB
GDScript3
Raw Normal View History

@tool
extends AnimationRoot
var wind_blows: AnimatedSprite2D
var paper_man: Ambush2D
# 覆盖该方法
func _default_data() -> Dictionary:
return {"display_paper_man": false}
func _ready() -> void:
super._ready()
if Engine.is_editor_hint():
return
2025-01-22 13:13:18 +00:00
func _on_ground_ready() -> void:
wind_blows = $"../DeployLayer/WindBlows"
wind_blows.visible = false
paper_man = $"../DeployLayer/Ambush纸人"
paper_man.enabled = data.display_paper_man
paper_man.visible = data.display_paper_man
func _oneshot_wind():
SceneManager.freeze_player(0)
%MainPlayer.visible = false
wind_blows.visible = true
wind_blows.play()
wind_blows.animation_finished.connect(_on_wind_finished, CONNECT_ONE_SHOT)
func _on_wind_finished():
%MainPlayer.visible = true
wind_blows.visible = false
DialogueManager.show_dialogue_balloon(dialogue_c02, "c02_s02_天冷")
DialogueManager.dialogue_ended.connect(_on_dialogue_ended, CONNECT_ONE_SHOT)
func _on_dialogue_ended(_res):
SceneManager.release_player()
func _display_paper_man():
data.display_paper_man = true
paper_man.enabled = true
paper_man.visible = true
paper_man.get_node("Sfx").play()
func paper_man_interacted():
SceneManager.enable_prop_item("prop_1012钥匙")
func lumber_interacted():
SceneManager.pop_debug_dialog_info("美术", "杂物堆⾥有眼睛瞟向玩家/眨动,然后消失(动画)")
_display_paper_man()