Escribiendo el Script
Para comprender cómo y dónde escribir los scripts de nuestra película veremos el modelo de ejecución de ActionScript.
Puede tener código añadido en varios fotogramas, botones y clips de película a lo largo y ancho de su película. Pero, ¿cuándo funcionan? Para responder a esta pregunta, vamos a explicar un poco de historia de la Informática.
En los albores de la Programación, las instrucciones de un programa eran
ejecutadas secuencialmente, en el orden en que aparecían, empezando por la
primera línea y acabando por la última. El programa tenía la intención de
realizar algunas acciones y pararse. Este tipo de programas, llamado batch (lote), no manejaba la interactividad requerida de un entorno de programación basado en eventos como es Flash.
Los programas basados en eventos no se ejecutan de forma lineal como hacen los programas batch. Este nuevo tipo de programas continúan funcionando (como un bucle) esperando a que los eventos sucedan y poder ejecutar segmentos de código en respuesta a dichos eventos.
En un lenguaje diseñado para utilizarse en un entorno visual interactivo (como son ActionScript o JavaScript), los eventos son, normalmente, acciones de usuario como pueden ser un clic de ratón o pulsar una tecla. Cuando ocurre un evento de este tipo, en el intérprete suena una alarma. El programa reaccionará a la alarma consultando al interprete para ejecutar el segmento de código apropiado.
Por ejemplo, si un usuario hace clic a un botón de la película, podremos ejecutar código que muestre una sección diferente de la película o bien, enviar variables a una base de datos.
Pero los programas no reaccionan a eventos a menos que les hagamos reaccionar utilizando manejadores de eventos.
Aquí hay algun seudo-código que muestra de forma genérica como se establecen los manejadores de eventos:
cuando (ocurra el evento) {
ejecuta este código
}
Lo que en código real queda así:
on (evento) {
instrucciones;
}
En la practica, un manipulador de eventos para un boton que mueve la cabecera al fotograma 60 será:
on (press) {
gotoAndPlay (60);
}
Que puede dar como resultado el botón de la película siguiente
(foto60.swf):
Puesto que los programas basados en eventos están siempre ejecutándose, listos para reaccionar al próximo evento, podemos decir que están como viviendo en el sistema.
Los eventos son partes cruciales de las películas Flash. Sin ellos nuestros scripts no podrían hacer nada, salvo una excepción: Flash ejecuta cualquier código de un fotograma cuando el cabezal de reproducción de la película entra en dicho fotograma. El evento implícito es simplemente el cabezal entrando en el fotograma particular, lo cual es tan intrínseco a Flash que no requiere ningún manejador de eventos.