За край экрана
Часть раздела Проекты путешествия по Godot на Coddy. Урок 12 из 33.
Включите двигатель на некоторое время, и корабль улетит за пределы экрана. В этой игре экран закольцован. Вылетите за правый край — и появитесь слева. Вылетите за нижний край — и появитесь сверху.
Напишите по одному if для каждого края. Прибавляйте или вычитайте ширину экрана, чтобы корабль сохранял расстояние, на которое он вылетел за край:
if position.x < 0:
position.x += 640
if position.x > 640:
position.x -= 640Сделайте то же самое для y, используя высоту — 360.
Задание
СреднеПосле перемещения корабля сделайте так, чтобы он перемещался по краям экрана:
- За левым или правым краем (0 и 640) он появляется с другой стороны.
- То же самое для верхнего и нижнего краёв (0 и 360).
Попробуйте сами
extends CharacterBody2D
const TURN_SPEED = 4.0
const THRUST = 300
func _physics_process(delta):
rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
if Input.is_action_pressed("move_up"):
velocity += Vector2.UP.rotated(rotation) * THRUST * delta
$Flame.visible = Input.is_action_pressed("move_up")
position += velocity * delta
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Проекты
2Проект: Астероидный шутер
Поворачиваем корабльЗапускаем двигательПотренируйтесь самостоятельно: Песочница Godot