Menu
CoddyTech

单次触发

本课属于 Coddy Godot 学习旅程的“游戏规则”单元。第 4 课,共 29 课。

计时器每次倒计时结束后都会重新开始。这适合闪烁的灯,但炸弹应该只爆炸一次。

将 one_shot 设为 true,计时器就会倒计时一次,然后停止:

$Timer.one_shot = true

再次调用 start(),计时器就会再运行一次。

在这座城堡里,按下 E 会打开大门并启动一个两秒的计时器。计时器倒计时结束后,大门就会关闭。

challenge icon

挑战

简单

让闸门只关闭一次。

  1. 在 _ready() 中,将 $Timer.one_shot 设置为 true。
  2. 其余部分保持不变,这样按 E 仍会打开闸门。

按“开始”,然后按 E:两秒后,闸门会关闭并保持关闭状态。然后点击“检查”。

亲手试试

extends Node2D

func _ready():
	$Timer.wait_time = 2
	$Timer.timeout.connect(_on_timer_timeout)

func _process(delta):
	if Input.is_action_just_pressed("action"):
		$Gate.position.y = 20
		$Timer.start()

func _on_timer_timeout():
	$Gate.position.y += 140

游戏规则中的所有课

自己练习: Godot 在线编辑器