Menu
CoddyTech

等待定时器

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

在函数中只等待一次时,你不需要 Timer 节点。get_tree().create_timer(2.0) 会在正在运行的代码中创建一个单次计时器。await 会暂停函数,直到收到 timeout 信号:

func _ready():
	print("Wait for it")
	await get_tree().create_timer(2.0).timeout
	print("Now!")

第一行会立即输出。游戏继续运行时,函数会在 await 处暂停。两秒后,函数会继续执行。

将 .timeout 保留在末尾。await 会等待一个信号,而 timeout 就是这个信号。

challenge icon

挑战

简单

游戏开始两秒后打开闸门。

  1. 在 _ready() 中找到移动 $Gate 的代码行。
  2. 在它上面,使用 await 等待 get_tree().create_timer() 创建的 2.0 秒计时器的 timeout。

按“开始”:闸门等待两秒,然后打开。接着按“检查”。

亲手试试

extends Node2D

func _ready():
	$Gate.position.y -= 140
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

游戏规则中的所有课

自己练习: Godot 在线编辑器