Menu
CoddyTech

Только с пола

Часть раздела Ввод и перемещение путешествия по Godot на Coddy. Урок 14 из 28.

Герой из предыдущего урока может снова прыгать в воздухе сколько угодно раз. Он должен прыгать только тогда, когда стоит на какой-либо поверхности.

is_on_floor() имеет значение true, если после последнего вызова move_and_slide() тело осталось на полу. В воздухе его значение — false.

and объединяет два условия. Блок if выполняется, только когда истинны оба условия:

if Input.is_action_just_pressed("jump") and is_on_floor():
	velocity.y = jump_velocity
challenge icon

Задание

Легко

Пусть герой прыгает только с пола.

  1. Добавь второе условие к if для прыжка с помощью and.
  2. Сделай его is_on_floor().

Нажми «Играть» и дважды нажми пробел: второе нажатие в воздухе ничего не даст. Затем нажми «Проверить».

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

extends CharacterBody2D

var gravity = 1000
var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	if Input.is_action_just_pressed("jump"):
		velocity.y = jump_velocity
	move_and_slide()

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

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