Ходьба повсюду
Часть раздела Ввод и перемещение путешествия по Godot на Coddy. Урок 10 из 28.
У velocity два числа, и ты можешь задать каждое из них. velocity.x отвечает за движение влево и вправо. velocity.y отвечает за движение вверх и вниз. Для каждой используется своя ось:
velocity.x = Input.get_axis("move_left", "move_right") * speed
velocity.y = Input.get_axis("move_up", "move_down") * speed
move_and_slide()Для velocity.y сначала указывается направление вверх, поэтому при удерживании клавиши вверх значение будет -1. Это перемещает героя вверх по экрану.
Удерживай клавиши вверх и вправо, и герой будет двигаться в обоих направлениях одновременно. Подойди к колонне под углом, чтобы увидеть, как она скользит.
Задание
ЛегкоГерой ходит влево и вправо. Пусть он ходит и вверх и вниз с той же speed, задав velocity.y.
Попробуйте сами
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
velocity.x = Input.get_axis("move_left", "move_right") * speed
move_and_slide()
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Ввод и перемещение
2CharacterBody2D
CharacterBody2DХодьба с помощью скоростиСтены останавливаютХодьба повсюдуРавномерные диагоналиПотренируйтесь самостоятельно: Песочница Godot