Ходьба повсюду
Часть раздела Ввод и перемещение путешествия по 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. Так герой движется вверх по экрану.
Удерживай клавиши вверх и вправо — и герой будет двигаться в обоих направлениях одновременно. Подойди к колонне под углом, чтобы увидеть, как герой скользит вдоль неё.
Задание
ЛегкоПусть герой ходит также вверх и вниз.
- Под строкой
velocity.xзадайтеvelocity.yтаким же образом, используяInput.get_axis("move_up", "move_down"). - Используйте ту же
speed.
Нажмите «Играть»: стрелки перемещают героя во всех направлениях. Затем нажмите «Проверить».
Попробуйте сами
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