Recolector de monedas: Caminar
Parte de la sección Señales y colisiones del Journey de Godot de Coddy. Lección 23 de 27.
Durante las próximas cinco lecciones, crearás Coin Collector. Te moverás por una habitación, recogerás todas las monedas y ganarás cuando no quede ninguna.
El juego tiene tres scripts:
player.gd: el robot que mueves.coin.gd: este script se ejecuta en cada moneda.main.gd: contiene las reglas del juego enMain.
Primero, el movimiento. El jugador es un CharacterBody2D. Las paredes y los dos bloques grises son StaticBody2D. Escribiste este código para mover al jugador en la sección anterior:
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()move_and_slide() mueve el cuerpo según su velocity y lo detiene al llegar a las paredes. Si cambiaras position directamente, atravesaría las paredes.
Desafío
FácilInicia Coin Collector: haz que el jugador camine.
- En
player.gd, asigna avelocityel resultado de multiplicarInput.get_vector("move_left", "move_right", "move_up", "move_down")porSPEED. - Después, llama a
move_and_slide(). Dejacoin.gdymain.gdtal como están.
Pulsa «Jugar»: las flechas o WASD hacen que el jugador camine, y las paredes lo detienen. Después, pulsa «Comprobar».
Pruébalo tú mismo
extends CharacterBody2D
const SPEED = 200.0
func _physics_process(delta):
pass
Todas las lecciones de Señales y colisiones
6Proyecto: Recolector de monedas
Recolector de monedas: CaminarRecolector de monedas: MonedasPractica por tu cuenta: Playground de Godot