Menu
CoddyTech

Ходьба повсюду

Часть раздела Ввод и перемещение путешествия по 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. Так герой движется вверх по экрану.

Удерживай клавиши вверх и вправо — и герой будет двигаться в обоих направлениях одновременно. Подойди к колонне под углом, чтобы увидеть, как герой скользит вдоль неё.

challenge icon

Задание

Легко

Пусть герой ходит также вверх и вниз.

  1. Под строкой velocity.x задайте velocity.y таким же образом, используя Input.get_axis("move_up", "move_down").
  2. Используйте ту же speed.

Нажмите «Играть»: стрелки перемещают героя во всех направлениях. Затем нажмите «Проверить».

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

extends CharacterBody2D

var speed = 200

func _physics_process(delta):
	velocity.x = Input.get_axis("move_left", "move_right") * speed
	move_and_slide()

Все уроки раздела Ввод и перемещение

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