等待定时器
本课属于 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 就是这个信号。
挑战
简单游戏开始两秒后打开闸门。
- 在
_ready()中找到移动$Gate的代码行。 - 在它上面,使用
await等待get_tree().create_timer()创建的2.0秒计时器的timeout。
按“开始”:闸门等待两秒,然后打开。接着按“检查”。
亲手试试
extends Node2D
func _ready():
$Gate.position.y -= 140
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
游戏规则中的所有课
自己练习: Godot 在线编辑器