Leçon 5 sur 6
Déplacer sans tricher
Un déplacement n'est valide que s'il ne crée pas de collision : on teste d'abord la position d'arrivée avec un objet d'essai, on ne bouge qu'ensuite.
move renvoie true si le déplacement a eu lieu, false sinon — le jeu saura si la pièce est bloquée.
var test = {x: piece.x + dx, y: piece.y, shape: piece.shape};
if (collides(grid, test)) {
return false;
}🎯 Ton objectif
Écris move(grid, piece, dx) : si la pièce décalée de dx ne provoque pas de collision, applique le déplacement (piece.x += dx) et renvoie true ; sinon ne bouge rien et renvoie false.
Leçon PRO
Ce chapitre avancé fait partie de CodeAge PRO. Débloque-le pour continuer ton aventure.
Découvrir PRO →