Однократный запуск
Часть раздела Правила игры путешествия по Godot на Coddy. Урок 4 из 29.
Таймер запускается заново каждый раз, когда срабатывает. Это подходит для мигающего света, но бомба должна взрываться только один раз.
Установи one_shot в значение true, и таймер сработает один раз, а затем остановится:
$Timer.one_shot = trueПовторный вызов start() запустит его ещё на один цикл.
В этом замке нажатие E открывает ворота и запускает таймер на две секунды. Когда таймер срабатывает, он закрывает ворота.
Задание
ЛегкоСделай так, чтобы ворота закрывались только один раз.
- В
_ready()установи для$Timer.one_shotзначениеtrue. - Оставь остальное без изменений, чтобы клавиша 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