Menu
CoddyTech

Saltar hacia arriba

Parte de la sección Entrada y movimiento del Journey de Godot de Coddy. Lección 13 de 28.

Para saltar, establece velocity.y en una velocidad ascendente alta en el fotograma en que el jugador pulsa jump. Hacia arriba corresponde a un valor menor de y, así que el número es negativo:

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()

No programas el descenso. La gravedad sigue sumándose a velocity.y, así que el héroe se ralentiza mientras asciende, se detiene en la cima y vuelve a caer.

Usa is_action_just_pressed, no is_action_pressed. Si mantuvieras pulsada una tecla, la velocidad se establecería en -500 en cada fotograma y el héroe saldría volando de la pantalla.

challenge icon

Desafío

Fácil

Haz que el héroe salte.

  1. Entre la línea de gravedad y move_and_slide(), agrega un if para Input.is_action_just_pressed("jump").
  2. Dentro de él, establece velocity.y en jump_velocity.

Presiona «Jugar» y la barra espaciadora: el héroe salta y vuelve a aterrizar, y mantener presionada la barra espaciadora no hace que salga volando. Después, «Comprobar».

Pruébalo tú mismo

extends CharacterBody2D

var gravity = 1000
var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	move_and_slide()

Todas las lecciones de Entrada y movimiento

Practica por tu cuenta: Playground de Godot