miércoles, 13 de enero de 2016

Trivial con App Inventor 1 - Tablero de juego

Este ejercicio consiste en lo siguiente:
  1. Crear un tablero de juego con El Gimp

  2. Poner el tablero en App Inventor. Añadir una ficha que pueda moverse con el dedo

  3. Hacer que la ficha  se mueva aleatoriamente a una casilla del tablero

  4. Hacer que la ficha se mueva un número determinado de casillas según la tirada de un dado.
1. Crear el tablero con El Gimp

Se creará un tablero como el de la figura, de 300 x 300 píxeles, siendo cada casilla de 50 x 50 píxeles:

2. Añadir una ficha que pueda moverse con el dedo

Se añadirá una ficha redonda (mediante el componente pelota), a la que se dará un radio de 20 píxeles, y se programará de manera que pueda moverse al arrastrarla con el dedo.

Código:



3. Programar la ficha para que aparezca en una casilla aleatoria

Se añadirá un botón a la aplicación, de manera que al apretarlo la ficha se mueva a una casilla aleatoria. Para ello hemos de tener en cuenta las coordenadas de cada casilla:

Para que la ficha quede centrada dentro de la casilla habrá que situarla un par de píxeles hacia la derecha y hacia abajo:

Así pues las coordenadas en las que puede aparecer la ficha serán (2,2), (52,2), (152,2), etc. Al apretar el botón habrá que hacer lo siguiente:

  1.  La posición X de la ficha deberá ser un número aleatorio entre 2, 52, 102, 152, 202 y 252. Para ello podemos decir al programa que nos de un número aleatorio, A, entre 0 y 5, y hacer X = 50 x A + 2.

  2.  Si X = 2 ó X=252 la posición Y de la ficha también puede tomar como valores 2, 52, 102, 152, 202 y 252. Entonces diremos: SI X=2 ó X=252, Y = 50 x A + 2, siendo A un número aleatorio entre 0 y 5.

  3. Si no es así, es decir, si X toma un valor de 52, 102, 152 ó 202, Y sólo puede valer 2 ó 252. Entonces diremos: SI NO buscar un número aleatorio entre 1 y 2. SI el número aleatorio vale 1, entonces Y=2, y SI NO, Y=252.
Se añadirán etiquetas que nos muestren los valores de X e Y en cada tirada:


Código:


4. Programar un dado para mover la ficha:

En este caso añadiremos un botón que hará de dado. Para ello haremos lo siguiente:

  1. Crearemos dos variables, una para el valor del dado, y otra para el valor de la casilla. La primera se iniciará con el valor 0, y la segunda con el valor 1, pues la ficha está situada al principio en la casilla 1. Para ello daremos a cada casilla un número:


  2. Crearemos dos listas, una para los valores X de la ficha en cada casilla, desde la 1 a la 20 (2 -casilla 1-, 52 -casilla 2-, 102 -casilla 3-, 152 -casilla 4-, 202 -casilla 5-, 252 -casilla 6-, 252 -casilla 7-, 252 -casilla 8-, etc.), y otra para los valores Y.

  3. Al apretar el botón la variable dado tomará un valor aleatorio entre 1 y 3, por ejemplo.

  4. La variable casilla aumentará en el valor de la variable dado (casilla = casilla + dado). SI la variable casilla vale más de 20, habrá que hacer casilla = casilla -20. De esta manera la variable casilla siempre tomará valores entre 1 y 20.

  5. La posición X de la ficha valdrá lo que indique la lista de valores X en la posición que indique la variable casilla, e igualmente sucederá con la posición Y.
Finalmente se añadirán las etiquetas correspondientes para indicar el número que ha salido en el dado y el número de casilla:


Código:


No hay comentarios:

Publicar un comentario