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