• No results found

Appendix B: Scale Variables and Reliabilities

Este paquete tiene un editor de propiedades propio, diferente del que trae Flash por defecto. Este editor de propiedades fue construido debido a que Flash no permite instanciar objetos con ActionScript durante el tiempo de diseño por problemas de seguridad. Todos los casos de usos que siguen son usando dicho editor. En las imágenes que en las tablas se mostrarán, el editor se muestra hacia la izquierda y detrás se muestra una escena de prueba.

Caso de uso: Seleccionar piezas para editar

Actor(es): Editor

Propósito: Seleccionar las piezas para las cuales se editarán sus parámetros

Resumen: Este caso de uso se inicia cuando el editor ha compilado la escena en modo de configuración y comienza a seleccionar las piezas para las cuales desea editar sus propiedades.

Precondiciones: Se debe haber establecido en la escena un componente llamado “ConfigurationPanel”.

Figura 4. La escena con el editor de texto

Acción del Actor Respuesta del Sistema

1. Da clic sobre una pieza la pantalla La pieza se muestra semitransparente

Caso de uso: Establecer si la pieza se congela

Actor(es): Editor

Propósito: Establecer si la pieza se congela.

Resumen: En ciertas y determinadas situaciones, es posible que se desee que alguna pieza en específico no se mueva. Esto suele suceder casi siempre para las piezas que son destinos de otras. El usuario puede establecer que una pieza esté "congelada" para evitar que ésta pueda moverse.

Precondiciones: Se debe haber establecido en la escena un componente llamado “ConfigurationPanel”.

Figura 5. El panel "Parámetro de transformación"

Acción del Actor Respuesta del Sistema

1. Selecciona una pieza en pantalla La pieza se muestra semitransparente 2. Busca en la sección "Parámetro de

transformación" y elije la opción “congelar”.

Marca la pieza como congelada e impide que la misma se mueva.

Caso de uso: Decidir cuáles transformaciones ejecuta la pieza.

Actor(es): Editor

Propósito: Decidir si la pieza ejecuta alguna transformación hacia sus puntos de destino o fuente.

Resumen: Existe un rango de tolerancia definido en el campo tolerance_radious que le indica la pieza a cuántos píxeles de distancia puede estar de alguno de sus puntos de destino para considerarse solucionada. Cuando una pieza es arrastrada hacia un punto que se encuentra a una distancia mayor que dicho rango de alguno de sus puntos de destino, se considera no resuelta. En ambos casos, la pieza puede quedar o bien en su punto fuente o bien en alguno de sus puntos de destino. Para ello, ejecuta una animación llamada transformación. Por defecto, dicha transformación es un vuelo en línea recta hacia el punto de destino o solución. El usuario puede decidir, si la pieza ejecuta alguna transformación, todas o ninguna.

Precondiciones: Se debe haber establecido en la escena un componente llamado “ConfigurationPanel”.

Figura 6. El panel "Parámetro de transformación" para editar transformaciones

1. Selecciona una pieza en pantalla La pieza se muestra semitransparente 2. Busca en la sección "Parámetro de

Transformación" y selecciona cuáles transformaciones desea ejecutar.

Guarda esta información y permite o impide que las piezas que ejecuten sus transformaciones acorde a lo pedido por el usuario.

Caso de uso: Establecer fotogramas de estado de la carátula

Actor(es): Editor

Propósito: Con el objetivo de hacer la interacción con el usuario más rica en recursos, la carátula puede cambiar ante determinados eventos tales como la pieza siendo arrastrada, la pieza siendo pinchada, siendo resuelta, volviendo a su lugar de origen, etc.

Resumen: Un MovieClip puede tener más de un fotograma. Haciendo uso de esta característica, es posible establecer carátulas que puedan variar ante los cambios de estados de la pieza.

Por ejemplo, si queremos que cuando el mouse pase por encima de la pieza ésta cambie de una mariposita blanca a una mariposita amarilla, se puede establecer un primer fotograma con una mariposa blanca y un segundo fotograma con una mariposa amarilla. Luego, estableceremos para el estado inicial el fotograma 1 y para el estado Mouse_Over el fotograma 2. Precondiciones: El usuario diseñador debe haber diseñado la carátula teniendo en cuenta

que (a no ser que se indique explícitamente lo contrario en algún fotograma) una vez iniciada una reproducción en Flash, ésta no se detendrá nunca, sino que entrará en un bucle infinito. De esta forma, la carátula debe separar los estados mediante procedimientos stop() y gotoAndPlay().

Figura 7. El panel Fotogramas de estado

Acción del Actor Respuesta del Sistema

1. Selecciona una pieza en pantalla La pieza se muestra semitransparente 2. Busca en la sección “Fotogramas de Estado”

Establece los fotogramas de estado para la selección.

Guarda esta información.

3. Ocasionalmente, en la lista desplegable "Estado" el usuario puede seleccionar el estado para previsualizarlo.

Hace que la pieza pase a ese estado y reproduce la carátula desde el fotograma indicado.

Caso de uso: Diseñar la carátula la pieza

Propósito: Diseñar la carátula la pieza.

Resumen: El diseñador debe diseñar la carátula de la pieza teniendo en cuenta cómo ésta cambia ante los eventos de la pieza.

Precondiciones: Ninguna

Acción del Actor Respuesta del Sistema

1. Diseña la carátula de la pieza y la asigna en la propiedad correspondiente

Muestra la carátula.

Caso de uso: Establecer el modo de juego

Actor(es): Editor

Propósito: Decidir el modo de juego del ejercicio

Resumen: Las piezas interactúan entre sí de diferentes formas: selección simple, arrastrar, selección múltiple, etc. este modo juego es controlado por el componente PuzzleManager.

Precondiciones: El usuario debe haber arrastrado una instancia de componente hacia la escena.

Figura 8. Editando el modo de juego

Acción del Actor Respuesta del Sistema

1. El usuario arrastra un instancia del componente

PuzzleManager hacia la escena y evita la

propiedad behavior

El sistema guarda dicha información.

Caso de uso: Hacer uso de los métodos y atributos.

Actor(es): Programador

Propósito: Utilizar los componentes en el código.

Resumen: El programador pueda hacer uso de los métodos y atributos públicos de los componentes del paquete, para programar el juego.

Acción del Actor Respuesta del Sistema

1. El usuario hace uso de las acciones y métodos públicos de los componentes del sistema.

El sistema responde acorde.

Caso de uso: Programar las transformaciones de la pieza

Actor(es): Programador

Propósito: Personalizar la transformación de solución o la transformación de regreso a la pieza.

Resumen: Las transformaciones pueden ser personalizadas asignando descendientes de la clase AbstractTransform a las propiedades solve_transform y

return_transform.

Precondiciones: Las instancias de los componentes del paquete deben estar inicializadas.

Acción del Actor Respuesta del Sistema

2. El usuario programa y asigna las transformaciones a la pieza.

Las piezas se animan hacia sus puntos de destino o fuente siguiendo las nuevas transformaciones, según sea el caso.

Caso de uso: Programar las reglas del juego

Actor(es): Programador

Propósito: Establecer un lugar centralizado en donde las piezas puedan notificar de las acciones que ha ocurrido sobre ellas

Resumen: Cuando el usuario realiza alguna interacción sobre alguna pieza, éstas lo notifican a su PuzzleManager. Éste, a su vez, pasa el mensaje a una clase asistente llamada Rules que es la encargada de manipular dichos eventos. De esta forma, la lógica del juego queda centralizada en un solo lugar. Es tarea del programador, crear un descendiente de la clase Rules y asignarlo a la propiedad game_rules del componente PuzzleManager.

Precondiciones: Las instancias de los componentes del paquete deben estar inicializadas.

Acción del Actor Respuesta del Sistema

1. El programador programa la descendiente de la clase Rules y una instancia de la misma la propiedad game_rules del componente

PuzzleManager.

Notifica a esta instancia de los eventos ocurridos con las piezas.

Related documents