extends CanvasLayer @onready var rect = $ColorRect as ColorRect func _ready() -> void: rect.material.set("shader_parameter/intensity", 0.0) var tween: Tween # duration 最短 1.5s func dizzy(duration := 3.5, intensity := 1.5) -> void: if tween and tween.is_valid(): tween.kill() show() tween = create_tween() tween.tween_property(rect.material, "shader_parameter/intensity", intensity, 0.5) tween.tween_interval(maxf(duration - 1.5, 0.01)) tween.tween_property(rect.material, "shader_parameter/intensity", 0.0, 1.0) tween.finished.connect(hide)