3. El ActionScript es el lenguaje de programación que
ha utilizado Flash desde sus comienzos, y que por
supuesto, emplea Flash CS5. A grandes
rasgos, podemos decir que el ActionScript nos
permitirá realizar con Flash CS5 todo lo que nos
propongamos, ya que nos da el control absoluto de
todo lo que rodea a una película Flash.
Absolutamente de todo.Sin embargo, en estos temas
sólo vamos a ver una pequeña introducción
a ActionScript 3 que servirá para sentar las bases que
permitirán empezar a trabajar con ActionScript.
Enseñar a programar con ActionScript requeriría otro
curso completo. Profundizar en el conocimiento de
este lenguaje queda por cuenta del lector.
Recomendamos seguir la estupendaAyuda incluida
en Flash CS5.
4. Como ya hemos comentado, el ActionScript es el
lenguaje de programación propio de Flash, tal y como
el Lingo lo es de Macromedia Director, por ejemplo. El
ActionScript está basado en la especificación ECMA-
262, al igual que otros lenguajes como Javascript.
ActionScript es, como su nombre indica, un lenguaje
de script, esto quiere decir que no hará falta crear un
programa completo para conseguir
resultados, normalmente la aplicación de fragmentos
de código ActionScript a los objetos existentes en
nuestras películas nos permiten alcanzar nuestros
objetivos.
ActionScript 3 es un lenguaje de programación
orientado a objetos. Tiene similitudes, por tanto, con
lenguajes tales como los usados en el Microsoft Visual
Basic, en el Borland Delphi etc
5. ... y aunque, evidentemente, no tiene la potencia de
estos lenguajes, cada versión se acerca más. Así, la
versión 3.0 utilizada en Flash CS5 es mucho más
potente y mucho más "orientada a objetos" que su
anterior versión 2.0.
La sintaxis ActionScript presenta muchísimos
parecidos con el Javascript o PHP; si estamos
familiarizados con estos lenguajes, la sintaxis y el
estilo de ActionScript nos resultarán muy familiares.
Las diferencias entre JavaScript y ActionScript las
podemos encontrar en la ayuda que acompaña al
Flash CS5.
En la mayor parte de las ocasiones, será necesario
"programar". Flash CS5 pone a nuestra disposición
una biblioteca de funciones, clases y métodos (de
momento entenderemos esto como "código
ActionScript que realiza una función determinada")
ya implementadas que realizan lo que
buscamos, bastará con colocarlas en el lugar
adecuado.
6. Vamos a mostrar los usos más característicos de
código ActionScript en los diferentes objetos existentes en Flash
CS5. De este modo lo comprenderemos mejor y porqué no, nos
ahorraremos trabajo al tener ya hechos aquí muchos de los
códigos que usaremos en nuestras películas. Mostraremos el
código y a continuación, una explicación del mismo.
Algunas cosas que debemos de tener en cuenta si estamos
familiarizados con la programación en ActionScript 2, es que
con ActionScript 3.0 no podemos utilizar:
1. alert()
2. La forma de tratar eventos, como on
(event){}, onClipEvent(event){}, object.onEvent = function(){}
, addListener , etc. La forma de tratarlos ahora es agregando un
escuchador al objeto, con el
método addEventListener, indicando el evento, y una única
función de escucha.
7. 3. Guiones bajos ( _ ) antes del nombre de las propiedades.
4. Variables globales (_global).
5. _root y _parent para acceder a elementos superiores.
Código ActionScript para botones
Los Botones (objeto Button para Flash CS5) tienen mucha
utilidad siempre que queramos que nuestra película interactúe
con el usuario. Dado que esto va a ser prácticamente
siempre, es conveniente estudiar y entender bien algunos
códigos típicos que tendremos que usar para conseguir nuestros
propósitos.
En realidad, los botones se comportan como cualquier símbolo.
A todos les podemos aplicar eventos, ya que lo que hacemos
es asociarlos normalmente al clic del ratón. Los botones tienen
la ventaja de que nos permiten representar distintos
estados, mejorando la percepción de interactividad.
Para tener el código organizado, es mejor crear una nueva
capa e insertarlo ahí.
Veamos algunos de ellos:
import flash.events.MouseEvent;
miBoton.addEventListener(MouseEvent.CLICK, funcionAlHacerCli
ck);
function funcionAlHacerClick(event:MouseEvent):void
{this.gotoAndPlay(15);}
8. En este tema veremos los puntos más importantes en los
que te podrás apoyar para realizar tus animaciones en
Flash usando ActionScript.
Esta unidad, la de Navegación, está
especialmente orientada a la web, pues veremos cómo
crear elementos que te ayudarán más tarde a crear tus
propias presentaciones, secciones, etc. Todo ello
apoyado con animaciones y vinculadas entre sí.
A lo largo del tema utilizaremos este ejemplo para ilustrar
la teoría de forma guiada.
18.2. Los Botones
Uno de los elementos que más nos van a ayudar a la hora
de añadir interactividad en el diseño son los botones
9. En el ejemplo nos hemos ayudado de los botones para
crear la navegación entre las diferentes secciones.
Así que el primer paso, después de haber creado la interfaz de la
película en una capa, será crear e insertar los botones en una nueva
capa para trabajar con mayor facilidad.
Para asignarle una acción a un botón es necesario darle un nombre
de instancia. Para ello (y como hemos visto en unidades anteriores)
escribimos el nombre que queramos (al cual nos referiremos más
tarde para llamar al botón) en el Inspector de Propiedades, en este
caso lo hemos llamado equipo.
10. Luego, creamos otra
capa para poder insertar
las acciones que
necesitarán nuestros
botones, abrimos el Panel
Acciones y añadiremos el
código que deberá
realizar el botón.
Ésta es la parte más
importante pues
deberemos decidir a qué
evento responderá el
botón. Existen varios
eventos que son
capturados en
Flash, nombraremos los
más importantes (echa un
vistazo a la
sección Controladores de
evento del
panel Fragmentos de
código).:
11. MouseEvent.CLICK: ejecuta la acción al hacer clic con el ratón..
MouseEvent.MOUSE_DOWN: ejecuta la acción al presionarse el
botón.
MouseEvent.MOUSE_UP: ejecuta la acción al soltarse el botón
(después de haberlo presionado).
MouseEvent.MOUSE_OVER: ejecuta la acción al desplazar el cursor
dentro del botón
MouseEvent.MOUSE_OUT: ejecuta la acción al desplazar el cursor
fuera del botón.
Nota: ActionScript diferencia entre mayúsculas y minúsculas, por lo
que si escribes, por ejemplo, mouse_up no será reconocido.
Para capturar el evento tenemos que añadir un escuchador que se
encargue de estar pendiente de si sucede ese evento, al elemento
correspondiente. En nuestro caso, al botón. Además del
evento, debemos de indicar el nombre de una función, que será el
código que se ejecute al producirse el evento.
Por tanto, si no hemos creado ya esa función, la tenemos que
definir, con el mismo nombre y pasándole como parámetro el
evento. Como siempre, entre las llaves {} introduciremos el código
que queremos que ejecute la función.
miBoton.addEventListener(MouseEvent.CLICK, miFuncion);
function miFuncion(e:MouseEvent):void
{//código de la función}