Skok w górę
Część sekcji Wejście i ruch ścieżki Godot w Coddy. Lekcja 13 z 28.
Aby skoczyć, ustaw velocity.y na dużą prędkość w górę w klatce, w której gracz naciska jump. Kierunek w górę oznacza mniejszą wartość y, więc liczba jest ujemna:
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()Nie musisz kodować ruchu w dół. Grawitacja wciąż zwiększa wartość velocity.y, więc bohater zwalnia podczas wznoszenia się, zatrzymuje się na szczycie i opada.
Użyj is_action_just_pressed, a nie is_action_pressed. Przytrzymany klawisz ustawiałby prędkość na -500 w każdej klatce, a bohater odleciałby poza ekran.
Wyzwanie
ŁatwyPo naciśnięciu jump ustaw velocity.y na jump_velocity. Bohater powinien podskoczyć i ponownie wylądować na podłodze. Przytrzymanie klawisza nie może sprawić, że zacznie latać.
Spróbuj swoich sił
extends CharacterBody2D
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
move_and_slide()
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wejście i ruch
3Grawitacja i skakanie
Spadanie pod wpływem grawitacjiSkok w góręTylko z podłogiBieg i skokSkok o zmiennej wysokościPodwójny skokPoćwicz samodzielnie: Edytor online Godot