Game over

Este es el paso numero ocho de los 16 del tutorial de Gamedev Phaser. Puedes encontrar el c贸digo fuente de como deber铆a verse, despu茅s de haber completado esta lecci贸n en Gamedev-Phaser-Content-Kit/demos/lesson08.html.

Para hacer el juego m谩s interesante podemos introducir la habilidad de perder --- si no golpeas la pelota antes de que alcance el borde inferior de la pantalla, se acabar谩 el juego.

C贸mo perder

Para proporcionar la habilidad de perder, deberemos inhabilitar las bolas que colisionen con el borde inferior de la pantalla. A帽ade el siguiente c贸digo dentro de la funci贸n create(); justo despu茅s de definir los atributos de las bolas est谩 bien:

game.physics.arcade.checkCollision.down = false;

Esto har谩 que a las tres paredes(arriba, izquierda y derecha) les rebote la bola, pero la cuarta pared (abajo) desaparecer谩, dejando que la bola caiga fuera de la pantalla si la pala no lo alcanza. Necesitamos una forma de detectar esto y actuar en consecuencia. A帽ade las siguientes lineas justo debajo de la nueva linea, a帽adida anteriormente:

ball.checkWorldBounds = true;
ball.events.onOutOfBounds.add(function(){
    alert('Game over!');
    location.reload();
}, this);

A帽adiendo esas lineas conseguiremos que la bola compruebe los l铆mites de su mundo(en nuestro caso la pantalla) y ejecute la funci贸n vinculada al evento onOutOfBounds. Cuando hagas click en el mensaje de alerta resultante, la p谩gina se resetear谩, asi podr谩s jugar otra vez.

Compara tu c贸digo

Puedes comprobar el c贸digo final para esta lecci贸n en la demo de abajo, y jugar con ello para entender mejor como funciona:

Siguientes pasos

Ahora el juego b谩sico est谩 hecho, hagamos mas interesante el caso introduciendo ladrillos para romper --- es hora de construir el campo de ladrillos.