Laboratorio 5: "Memory"
Post date: Feb 15, 2013 6:13:33 PM
El objetivo de este laboratorio de final de tercio es evaluar características del lenguaje de programación Python y el ambiente CodeSkulptor. Para ello, el estudiante deberá modificar una versión del juego "Memory" en CodeSkulptor y entregar una versión "más interesante" de este juego.
"Memory" es uno de tantos juegos de cartas. Puede ver sus reglas y algunas variaciones en Wikipedia.
El taller se desarrollará en CodeSkulptor utilizando esta plantilla. Es importante que siga las convenciones e instrucciones allí expuestas.
Siguiendo la plantilla, identifique:
- Las constantes y variables globales que allí se encuentran definidas.
- La función
init()
; esta función se invoca cada vez que se inicia una partida del juego. - La función
draw(canvas)
; esta función se invoca aproximadamente 60 veces por segundo y su objetivo es actualizar el estado del juego y de la interfaz gráfica. - Las función
keymouseclick(pos)
; esta función se encargan de registrar los eventos asociados al ratón.
Una vez familiarizados con el código de la plantilla, lleve a cabo los siguientes cambios en la plantilla:
- (10 pts) Invertir el uso de los colores azul y naranja.
- (10 pts) Actualmente el se juega con 8 pares de cartas, representadas por pares de valores entre 0 y 7, inclusive. Aumente el número de parejas a 10, representando los pares de valores con los números entre 0 y 9, y ajustando coherentemente el tamaño de la ventana en donde se muestra el juego.
- (10 pts) Indicar al usuario por medio de un mensaje de advertencia en la consola cada vez que se escoje una carta que ya ha sido 'destapada'.
- (10 pts) Registrar la cantidad de escogencias erróneas (es decir, escogencia de cartas ya destapadas) mostrando esa información de una forma similar a como se muestra la información de 'Moves'. Cada vez que se re-inicia el juego, la información de errores inicia a contar desde
0
. - (10 pts) Cambiar el tamaño de las cartas de
50x100
pixeles a60x90
pixeles, ajustando coherentemente el tamaño de la ventana en donde se muestra el juego.
El laboratorio es individual y la instrucciones de entrega se darán durante la sesión.