En esta entrada vamos a aprender a utilizar las variables (que sirven para gestionar datos) en la herramienta Scratch.

Las variables son una especie de casilleros en los que podremos almacenar datos. Pero… ¿para qué nos pueden hacer falta las “variables” en los videojuegos?

Hay veces en las que necesitamos tener almacenado un valor y a lo largo de la partida ir consultándolo o modificándolo. Un ejemplo muy claro son las vidas de los personajes. Es muy habitual que en los juegos se ofrezca la posibilidad de que el usuario realice varios intentos para poder terminar la partida con éxito. Es lo que habitualmente se denominan “las vidas” de los personajes. Pues bien, ¿cómo podríamos incluir vidas a nuestros videojuegos?

Si lo pensamos, éstas no son más que unos valores… son “variables”. Al principio del programa tendrá un valor determinado, la cantidad de vidas u oportunidades para intentar superar el juego, y conforme se vayan perdiendo vidas, este valor tendrá que ir disminuyendo hasta llegar a cero… El temido “Game Over”

¿Cómo se crean las variables en Scratch? Es muy sencillo:

fichaDatosScratch

Se encuentran en la pestaña “Datos” y se crean pulsando sobre el botón “Crear una variable”. Podremos escoger entre: “Para todos los objetos” si queremos que cualquier objeto de nuestro videojuego pueda ver y manejar esta variable o bien “Sólo para éste objeto” si sólo este objeto va poder acceder a la variable. Si tienes dudas, escoge la primera opción.

Después de crear una variable, ésta se visualizará automáticamente y podremos actuar sobre su contenido mediante los bloques de la pestaña “Datos”.

Un truco: si haces doble clic sobre el marcador cambiará de aspecto. Elije el que más te guste.

FichaDatos

¡Bien! Ahora tenemos que aprender a manipular su valor.

La primera operación que tenemos que realizar antes de poder usar una variable es inicializarla, es decir, asignar el valor inicial con el que queremos que comience la partida. En nuestro caso, por ejemplo, podríamos decidir que cuando comience a ejecutarse el programa (es decir, cuando comienza una partida) se fijara el valor de la variable vidas a 3.

InicializaVidas

Luego, a lo largo del programa, tendremos que controlar cuándo ir restando vidas y, lo que es más importante, cuándo hemos llegado al final de la partida (ya que las vidas han llegado a cero).

Para ello, a modo de ejemplo, vamos a tomar el videojuego desarrollado en las diapositivas Arkanoid (I) y propondremos una modificación para que incluyan vidas:

Tomaremos el programa propuesto para la bola:

Antes de meter vidas

y lo cambiaremos por este otro:

Solución inicial

La modificación realizada es la siguiente:

  • Cada vez que la bola baja más de la cuenta comprobaremos cuántas vidas tenemos.
  • Si aún nos quedan vidas (porque el valor de la variable vidas es mayor que cero), tendremos que restar uno al valor vidas y la partida continuará.
  • Ahora bien, en el caso de que no tengamos más vidas que gastar (porque el valor de la variable vidas sea cero) se terminará la partida.

¡Parece que ya lo hemos conseguido!

Sin embargo, para que hacer que el juego parezca más real, cada vez que se pierda una vida deberíamos realizar la siguiente secuencia:

  • Llevar la bola al centro
  • Apuntar hacia arriba
  • Esperar un segundo
  • Continuar con la partida.

¿Serías capaz de conseguirlo? ¡Seguro que sí!

Aquí te dejamos una posible solución:

Solución final

Aunque quizás lo mejor es que veas directamente el resultado:


Ver proyecto en Scratch

Ya sabes un poco más de Scratch. ¿Te animas a aplicar las variables a tus videojuegos? Cuéntanos cómo.

¡Hasta pronto!

Imagen de cabecera: Arkanoid! On the iPhone! de Devar