Menu
CoddyTech

Héroe: saltar

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

El foso tiene 80 píxeles de ancho. Sin saltar, el héroe no puede cruzarlo. Añade una variable jump_velocity y un salto que solo funcione desde el suelo:

var jump_velocity = -500

# en _physics_process, después de aplicar la gravedad:
if Input.is_action_just_pressed("jump") and is_on_floor():
	velocity.y = jump_velocity

Un salto dura aproximadamente un segundo. En ese tiempo, el héroe corre 220 píxeles, mucho más que el ancho del foso. Corre hacia el foso y salta justo antes del borde.

challenge icon

Desafío

Fácil

Haz que el héroe salte por encima del hoyo.

  1. Añade var jump_velocity = -500 al principio.
  2. Después de la línea de gravedad, establece velocity.y en jump_velocity cuando se pulse jump y el héroe is_on_floor().

Pulsa «Jugar», corre y salta: el héroe supera el hoyo. Después, pulsa «Comprobar».

Pruébalo tú mismo

extends CharacterBody2D

var speed = 220
var gravity = 1000

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

Todas las lecciones de Entrada y movimiento

Practica por tu cuenta: Playground de Godot