Win the game
Este es el paso 12º del tutorial 16 de Gamedev Phaser. Puedes encontrar el código fuente tal y como queda al completar el tutorial en Gamedev-Phaser-Content-Kit/demos/lesson12.html.
Implementar las victorias en nuestro juego es fácil: si destruyes todos los ladrillos, ganas.
¿Cómo ganar?
Añade el siguiente código a la función ballHitBrick()
:
function ballHitBrick(ball, brick) {
brick.kill();
score += 10;
scoreText.setText("Points: " + score);
var count_alive = 0;
for (i = 0; i < bricks.children.length; i++) {
if (bricks.children[i].alive == true) {
count_alive++;
}
}
if (count_alive == 0) {
alert("You won the game, congratulations!");
location.reload();
}
}
Recorremos los ladrillos del grupo usando bricks.children
, verificando la vida de cada uno con el método .alive()
. Si no quedan más ladrillos con vida, mostramos un mensaje de victoria, reiniciando el juego una vez que la alerta desaparezca.
Compare su código
Puedes comprobar el código terminado de esta lección en la siguiente demo, y jugar para entender mejor cómo funciona: