Uso de operadores lógicos

Comenzamos el ejercicio colocando un lienzo (Canvas1), al que daremos unas dimensiones de 300 x 300 pixels. Dentro de este lienzo situaremos la imagen del topo (ImageSprite1) que colocaremos en las coordenadas X=150 e Y=150. También colocaremos un reloj (Clock1) y un botón de "reinicio-parada".

Cada vez que el reloj deja pasar una cantidad de tiempo establecida, la imagen del topo se mueve de forma que el valor de la coordenada "X" aumenta en 10 unidades, desplazándose hacia la derecha.

Ahora pasamos a usar los operadores lógicos, que nos indican si algo se cumple o no se cumple (Es cierto o es falso), con las etiquetas "false" y "true". Al hacer clic sobre el botón se activa una estructura condicional. La condición es que el reloj se encuentre en marcha, "if Clock1.TimerEnabled". Si se cumple esta condición, se para el reloj, "set Clock1.TimerEnabled to false", y se muestra el texto "Inicio" en el recuadro del botón. En el caso de que no se cumpla la condición se vuelve a activar el reloj y se muestra el texto "Paro" en el recuadro del botón.

De esta forma, a cada clic que hagamos sobre el botón, cambia el estado del reloj y el aspecto del botón.

Vamos ahora a modificar la aplicación, para hacer este juego más atractivo. Para empezar, necesitamos añadir un sonido y una etiqueta en donde anotar la puntuación.

Para empezar modificamos la manera como se mueve el topo. Para mover el topo creamos un procedimiento llamado "toposaltarin". Este procedimiento mueve el topo, determinando sus dos coordenadas X e Y de forma aleatoria.

Dado que dispondremos de un marcador de la puntuación, definimos una variable global llamada "marcador" y a la que asignamos un valor inicial cero.

Cada vez que transcurre un intervalo de tiempo marcado por el reloj, se ejecuta el procedimiento "toposaltarin".

Cada vez que tocamos con el dedo la imagen del topo, se ejecutan varias acciones. Por una parte se incrementa el valor de la variable "marcador" en una unidad. También se hace vibrar el teléfono con un sonido durante medio segundo. Además se ejecutan los procedimientos "toposaltarin" y "actualizarmarcador".

El procedimiento "actualizarmarcador" muestra en la etiqueta Label1 el texto "Puntuación = " y el valor de la variable global "marcador".

Cuando se hace clic sobre el botón se cambia de "inicio" a "paro" y, cuando pasa a "inicio" se pone el marcador a cero.