VARIABLES
Vamos a dibujar puntos en lugar de líneas con el siguiente script. Fíjate en que al bajar y subir el lápiz se marca un único punto circular, y su diámetro es el del tamaño del lápiz.
Ahora vamos a modificar algunas cosas. Primero haremos que el punto sea más grueso cada vez que se produzca el bucle:
Y segundo, cada punto será de un color diferente:
En los dos últimos scripts hemos modificado los valores de dos propiedades del lápiz. Estos valores que pueden cambiar se llaman variables. Además de propiedades del lápiz hay otras variables que nos ofrece el sistema, como coordenadas, notas de sonido, instrumentos musicales, tamaño de los objetos, etc. Por si fuera poco, podemos crear cualquier variable que pudiéramos necesitar. Vamos a verlo con un ejemplo usando la apariencia del gato. Escribe este script:
Verás que al ejecutarlo, la figura se hace más grande. Se ha usado una variable que nos da el sistema, pero ahora crearemos el mismo efecto con una variable que crearemos nosotros. No borres el programa anterior, y abre el grupo Datos, para luego pulsar en el botón Crear una variable:
Escribe el nombre tamaño, verás que aparecen bloques relacionados con la nueva variable. A continuación escribe este programa al lado del script anterior:
Los dos scripts hacen lo mismo, la diferencia es que las variables creadas por el usuario se pueden usar para cualquier fin, como marcador de puntos en un juego o como control de tiempo, como en el siguiente ejemplo:
CONDICIONALES
Cuando hemos usado un bloque del grupo Eventos debe cumplirse la condición del evento para que se desencadene el script que tiene debajo. Existen otras formas de permitir scripts cuando se cumpla una condición, y están en el grupo de Control: son los condicionales:
Sólo se realizarán las instrucciones que haya dentro de la tenaza si se cumple la condición que pongamos en el exágono. Si no se cumple, se ignora todo el grupo y se continúa con el programa.
En este caso, si se cumple la condición se ejecutan las instrucciones que haya en la primera tenaza, y si no se cumple, se ejecutarán las instrucciones que haya en la segunda tenaza.
Con esta instrucción se detiene el programa hasta que se cumpla la condición que hayamos fijado en el exágono.
En este caso se repetirán todas las instrucciones que haya en la tenaza hasta que se cumpla la condición.
Ya sabemos arrastrar bloques para crear un script, pero ahora nos podemos plantear, ¿cómo se definen las condiciones? En el grupo Operadores tenemos unos bloques con forma exagonal. Los tres primeros son claros:
Se compara si un valor es menor, igual o mayor que otro. Por ejemplo:
Como se cumple la condición (3 < 5), se ejecutarán las instrucciones que hay en la primera tenaza y se omiten las de la segunda. Por lo tanto, el gato se moverá en horizontal. Si hubiéramos puesto otros valores, por ejemplo 8 < 5, como no se cumple la condición, se ejecutarían las instrucciones de la segunda tenaza, y el gato se movería en vertical. Estas técnicas condicionales se suelen aplicar con variables, como en este caso:
Hay otros tres operadores que necesitan un análisis más detenido. Son:
En el primer caso obligamos a que se cumplan a la vez dos condiciones, en el segundo a que se cumpla cualquiera de las dos, y en el tercero a que no se cumpla la condición. Veámoslo con unos ejemplos:
La condición es si 3 es menor que 5, y a la vez, si 8 es mayor que 12.
Como la segunda parte de la condición no se cumple, no se ejecutarán las instrucciones.
El programa sólo continuará cuando la variable sea menor que 5 o mayor que 12. Es decir, se detendrá mientras la variable valga entre 5 y 12.
Ésta es una forma más enrevesada de trabajar. La condición es que la puntuación no sea igual a 10.
ACTIVIDAD
Bien, ya estamos preparados para crear un juego sencillo. En un nuevo proyecto, incorporamos dos objetos nuevos que serán un ratón y otro gato diferente al de siempre (eliminaremos el anterior pulsando el botón derecho del ratón sobre él y seleccionando Borrar):
A continuación dotaremos al ratón de un programa de control mediante las flechas. Ya lo hemos hecho antes:
Al gato le programaremos para que persiga al ratón:
Ahora el juego funciona, y podemos aumentar la dificultad variando los pasos que se mueve el gato en cada bucle. Verás que cuando el gato pilla al ratón no tiene muy claro cómo reaccionar. Haremos que se acabe el juego, modificando el script de forma que el gato sólo se mueve si no está en contacto con el ratón. Añadiremos un bloque azul claro, que es del grupo de los Sensores.
Además, en el programa del gato vamos a poner un contador de tiempo que actuará como marcador. Al lado del programa de persecución pondremos el script siguiente:
Ahora te toca a tí modificar el juego para que el ratón desaparezca cuando el gato le alcance. Cuando lo tengas hecho, nombra el proyecto como Caza_0, y guárdalo porque seguiremos utilizándolo, aún no está completo.