Menu
CoddyTech

Recorre la mazmorra

Parte de la sección Proyectos del Journey de Godot de Coddy. Lección 29 de 36.

El último proyecto es un juego de exploración de mazmorras con vista desde arriba. El héroe recoge una llave, abre una puerta, pasa junto a un guardia y llega a las escaleras.

Los scripts son hero.gd, enemy.gd y main.gd. Las paredes son un StaticBody2D llamado Walls, que ya está en la escena.

El héroe camina en cuatro direcciones. Input.get_vector lee las cuatro teclas y da una dirección de longitud 1, por lo que las diagonales no son más rápidas. move_and_slide() mueve el cuerpo según su velocity y lo desliza a lo largo de las paredes:

velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()

move_and_slide usa delta por sí mismo, así que no lo multiplicas por ese valor.

challenge icon

Desafío

Fácil

Guía al héroe por la mazmorra.

  1. En hero.gd, añade const SPEED = 160.
  2. En cada fotograma de física, establece velocity como el resultado de Input.get_vector con las cuatro acciones de movimiento multiplicado por SPEED, después llama a move_and_slide().

Pulsa «Jugar» y camina: las paredes detienen al héroe. Después pulsa «Comprobar».

Pruébalo tú mismo

extends CharacterBody2D

func _physics_process(delta):
	pass

Todas las lecciones de Proyectos

Practica por tu cuenta: Playground de Godot