Не выпускаем ракетку за пределы экрана
Часть раздела Проекты путешествия по Godot на Coddy. Урок 2 из 33.
Удерживайте клавишу вправо, и ракетка выедет за край экрана. clamp(value, low, high) удерживает число в пределах двух границ. Если число меньше low, функция возвращает low. Если число больше high, она возвращает high. В остальных случаях она возвращает число без изменений.
position.x = clamp(position.x, 40, 600)Ширина ракетки — 80 пикселей. При x = 40 её левый край касается левой границы. При x = 600 её правый край касается правой границы, расположенной на отметке 640.
Применяйте ограничение после перемещения. Если применить его сначала, перемещение может вывести ракетку за край.
Задание
ЛегкоУдерживай платформу целиком на экране: после её перемещения ограничь position.x значениями от 40 до 600.
Попробуйте сами
extends CharacterBody2D
const SPEED = 400
func _physics_process(delta):
var direction = Input.get_axis("move_left", "move_right")
position.x += direction * SPEED * delta
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Проекты
1Проект: «Арканоид»
Ракетка для «Арканоида»Не выпускаем ракетку за пределы экранаПотренируйтесь самостоятельно: Песочница Godot