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