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.
Desafío
FácilGuía al héroe por la mazmorra.
- En
hero.gd, añadeconst SPEED = 160. - En cada fotograma de física, establece
velocitycomo el resultado deInput.get_vectorcon las cuatro acciones de movimiento multiplicado porSPEED, después llama amove_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
1Proyecto: Breakout
La pala de BreakoutMantén la pala en pantalla4Proyecto: Explorador de mazmorras
Recorre la mazmorraRecoge la llavePractica por tu cuenta: Playground de Godot