Menu
CoddyTech

Bieg i skok

Część sekcji Wejście i ruch ścieżki Godot w Coddy. Lekcja 15 z 28.

Bieganie zmienia tylko velocity.x. Grawitacja i skok zmieniają tylko velocity.y. Rozdziel więc te dwie składowe:

velocity.x = Input.get_axis("move_left", "move_right") * speed

Nie ustawiaj całej prędkości, na przykład tak:

velocity = Vector2(Input.get_axis("move_left", "move_right") * speed, 0)

Ta linia ustawia velocity.y na 0 w każdej klatce. Zeruje prędkość opadania i skok, przez co bohater unosi się w powietrzu.

challenge icon

Wyzwanie

Łatwy

Pozwól bohaterowi biegać podczas spadania i skakania.

  1. Nad move_and_slide() ustaw velocity.x na wartość Input.get_axis("move_left", "move_right") pomnożoną przez speed.
  2. Pozostaw velocity.y grawitacji i skokowi.

Naciśnij „Graj”: bohater biegnie z prędkością 220 pikseli na sekundę i może skakać w górę i w prawo. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

extends CharacterBody2D

var speed = 220
var gravity = 1000
var jump_velocity = -500

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

Wszystkie lekcje w sekcji Wejście i ruch

Poćwicz samodzielnie: Edytor online Godot