Menu
CoddyTech

Зацикливание по экрану

Часть раздела Узлы и сцены путешествия по 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.

challenge icon

Задание

Легко

Сделай так, чтобы робот возвращался слева.

  1. В _process() под строкой, которая перемещает робота, добавь if для случая, когда position.x больше 640.
  2. Внутри него задай position.x значение 0.

Нажми «Играть»: робот исчезнет справа и появится слева на той же высоте. Затем нажми «Проверить».

Попробуйте сами

extends Node2D

var speed = 200

func _process(delta):
	position.x += speed * delta

Все уроки раздела Узлы и сцены

Потренируйтесь самостоятельно: Песочница Godot