extends AnimatedSprite2D @export var fade_in: bool = false @export var next_animation: String = "" func _ready() -> void: visible = false frame = 0 # 结束后播放下一个动画 if next_animation != "": animation_finished.connect(_on_animation_finished, CONNECT_ONE_SHOT) sprite_frames.set_animation_loop(animation, false) var area2d = $Area2D as Area2D if area2d: area2d.monitoring = true area2d.body_entered.connect(_on_body_entered, CONNECT_ONE_SHOT) func _on_animation_finished() -> void: if next_animation != "": play(next_animation) func _on_body_entered(_node: Node) -> void: visible = true if fade_in: var tween = create_tween() # 透明度逐渐变为 1 tween.tween_property(self, "modulate:a", 1.0, 2.5).from(0.0) # 播放动画 play(animation)