Attraversa il dungeon
Fa parte della sezione Progetti del percorso Godot di Coddy. Lezione 29 di 36.
L'ultimo progetto è un dungeon crawler, visto dall'alto. L'eroe prende una chiave, apre una porta, supera una guardia e raggiunge le scale.
Gli script sono hero.gd, enemy.gd e main.gd. Le pareti sono un StaticBody2D chiamato Walls, già presente nella scena.
L'eroe cammina in quattro direzioni. Input.get_vector legge tutti e quattro i tasti e restituisce una direzione di lunghezza 1, quindi le diagonali non sono più veloci. move_and_slide() sposta il corpo usando la sua velocity e lo fa scivolare lungo le pareti:
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()move_and_slide usa direttamente delta, quindi non devi moltiplicare per esso.
Sfida
FacileGuida l'eroe attraverso il dungeon.
- In
hero.gd, aggiungiconst SPEED = 160. - A ogni frame fisico, imposta
velocitysul risultato diInput.get_vectorcon le quattro azioni di movimento moltiplicato perSPEED, poi chiamamove_and_slide().
Premi «Gioca» e cammina: le pareti fermano l'eroe. Poi premi «Verifica».
Provalo tu
extends CharacterBody2D
func _physics_process(delta):
pass
Tutte le lezioni di Progetti
1Progetto: Breakout
La racchetta di BreakoutMantieni la racchetta sullo schermo4Progetto: Dungeon Crawler
Attraversa il dungeonRaccogli la chiaveEsercitati da solo: Playground Godot