Зацикливание по экрану
Часть раздела Узлы и сцены путешествия по Godot на Coddy. Урок 17 из 27.
Узел, движущийся вправо, продолжает движение за край экрана. Циклический переход возвращает его с другой стороны.
if выполняет строки внутри себя, только когда его условие истинно. В _process() оно проверяется на каждом кадре:
func _process(delta):
position.y += 100 * delta
if position.y > 360:
position.y = 0Узел падает. Когда он проходит нижний край экрана, значение y становится больше 360, и узел возвращается наверх. В строке внутри if есть две табуляции: одна для функции, другая для if.
Ширина этой игры — 640 пикселей, поэтому правый край — это x = 640.
Задание
ЛегкоРобот движется вправо и покидает экран. Сделай так, чтобы он появлялся с другой стороны: когда он пересекает x = 640, перемести его обратно в x = 0, влево, на ту же высоту.
Попробуйте сами
extends Node2D
var speed = 200
func _process(delta):
position.x += speed * delta
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Узлы и сцены
2Каждый кадр
Процесс выполняется каждый кадрДельтаПиксели в секундуДвижение по диагоналиВращениеУвеличение масштаба5Проект: Заставка экрана
Заставка: ДрейфЗаставка: Боковые стены3Настраиваемые значения
Переменные узлаКонстантыЭкспортируемые переменныеМатематика с Vector2Зацикливание по экрануСвои функцииПотренируйтесь самостоятельно: Песочница Godot