sábado, 9 de julio de 2016

Frogger en Scratch (parte 3)

Esta semana hemos continuado con nuestro proyecto de recrear el juego Frogger con Scratch. La semana pasada (Frogger en Scratch parte 2) incluimos el restos de elementos que nos faltaban para poder decir que era un videojuego, de hecho ya pudimos empezar a jugar nuestras primeras partidas. Aun así, hay algunos elementos más que vamos a incluir en esta sesión.




Uno de las cosas más importantes en todo videojuego es alcanzar un objetivo, podríamos decir que el jugador sólo gana cuando alcanza dicho objetivo. En nuestro caso, hasta ahora no habíamos establecido ningún objetivo, nuestro juego sólo consistía en evitar que atropellaran a nuestra rana o se ahogase. Es por ello que lo primero que vamos a realizar es introducir un personaje más, y que será nuestro objetivo del juego. 



El objetivo del juego será alcanzar a dicho personaje, el cual se encuentra al otro lado del río. Una vez se alcance, se mostrará la siguiente imagen para indicar al jugador que ha ganado:




Para lograr todo esto, deberemos distinguir los diferentes estados del juego: 

  • Playing: cuando nos encontramos moviendo a nuestra rana y jugando a este videojuego.
  • The End: cuando logramos alcanzar nuestro objetivo.
  • Game over: cuando perdemos.
Para ello utilizaremos cuatro variables (para más información puedes visitar el post que dedicamos a las variables):



Estas variables las inicializaremos ("playing", "the end" y "game over" tendrán un valor diferente) al pulsar la bandera verde, es decir, al iniciar nuestro juego:



La variable "estado del juego" la utilizaremos para saber el estado en el que se encuentra nuestro juego, por lo que cambiará de valor, el resto de variables ("playing", "the end" y "game over") tendrán un valor fijo y sólo se utilizarán como etiquetas.

Para que nuestra rana (y el resto de personajes) solo se muevan cuando estemos jugando, deberemos comprobar que la variable "estado del juego" es igual a "playing", con esto evitaremos que podamos mover a nuestra rana cuando ganemos ( "the end") o perdamos ("game over"):



También deberemos modificar los bloques de los coches y el tronco de madera. Sólo se deberán mover cuando estamos en el estado "playing", se deberán ocultar cuando estemos en el estado "the end":



Una vez hecho esto, debemos incluir todo lo que queramos realizar cuando logramos nuestro objetivo. Para ello deberemos incluir un nueva comprobación dentro del bucle de nuestro personaje. En este caso de que toque a la otra rana, deberemos cambiar el estado de la variable "estado del juego", ocultar nuestra rana, mostrar el fondo que hemos indicado más arriba, y tocar una canción:



A continuación mostramos un vídeo del juego con los cambios que hemos indicado en el artículo de hoy:




sábado, 2 de julio de 2016

Frogger en Scratch (parte 2)

Esta semana hemos continuado con nuestro proyecto para recrear el juego Frogger en Scratch. En esta ocasión, y tras comprobar que nuestra rana se mueve a las mil maravillas (Frogger en Scratch parte 1), hemos introducido el resto de elementos del juego: los coches y un tronco de madera.


Los coches son el primer obstáculo que se encontrará nuestra rana. Para poder cruzar la carretera, y llegar al otro lado, deberá evitar que los coches la atropellen.

Una vez colocados los diferentes coches (concretamente tres coches, uno de color rojo, otro de color azul y un coche de policía) sobre nuestra pantalla, les hemos dotado de movimiento, a cada uno en una dirección y velocidad diferente. También nos hemos encargado de hacerlos desaparecer cuando llegan a un extremo de la pantalla (eje de las x), y volverlos hacer aparecer en el otro extremo. Los bloques que hemos utilizado son los siguientes:



En cuanto al tronco, hemos aplicado el mismo comportamiento que el de los coches, con la única diferencia de que su movimiento es mucho más lento.



Tras completar el movimiento de los nuevos elementos, hemos incluido las comprobaciones necesarias para que el juego finalice en caso de que nuestra rana se toque con alguno de los coches o el río de la parte superior.

Para ello hemos incluido un bucle dentro de nuestro personaje nada más pulsar la bandera verde, donde se comprobará si nuestro personaje se ha tocado con algún coche o con el color del agua del río, en este caso detendremos todos los elementos del juego. 



Para indicar al jugador que ha perdido, hemos duplicado el fondo, y hemos incluido en éste el texto "HAS PERDIDO":



A continuación podéis un  vídeo del resultado:



En el próximo capítulo incluiremos el objetivo al que tiene que llegar la rana, en caso de que lo consiga se indicará al jugador que lo ha logrado, y en caso de perder haremos desaparecer a la rana y no se la permitirá mover hasta iniciar una nueva partida.