En este apartado vamos a empezar a trabajar
con ActionScript, que es el lenguaje de programación de Flash 5 y posteriores.
Es un lenguaje orientado a objetos basado en JavaScript. Los script son
mini programas que, en este caso el reproductor o el navegador, interpretan
(lenguaje interpretado) sin necesidad de compilar como en otros programas
C++, Java, etc.
Como todo lenguaje de programación ActionScript
requiere cierto tiempo de aprendizaje...pero no nos asustemos...!, vamos
a empezar con scripts muy sencillos que nos permitan trabajar directamente
sobre la película (reproducir, parar, etc.) Una cosa más, tenemos
que tener en cuenta que estos scripts solo pueden aplicarse a símbolos (botones
y clips de película) y a fotogramas.
Lo primero que tenemos que hacer es
planificar lo que queremos realizar (parece una tontería, pero esto nos
va a ahorrar mucho tiempo a la hora de confeccionar nuestro código) y después
empezar a programar lo planificado. Por último decir, que como otros
lenguajes de programación, ActionScript posee Variables (contenedores de
información), operadores (combinan, comparan o modifican valores), Objetos
predefinidos (como el objeto MovieClip, Mouse,Date, etc. nos vamos a centrar
en ellos, aunque podremos construir objetos nuevos), funciones, propiedades
y métodos.
Empezamos. Play y Stop
Imaginemos que trabajamos en una película en la que tenemos una interpolación
de movimiento, pero en este caso, queremos que la película se detenga
en varios fotogramas y a través de un botón,para que la película se reproduzca
cuando nosotros queramos.
Comenzamos en una capa (que llamaremos botón) de una película nueva, diseñamos
un botón con sus cuatro estados (reposo, sobre, abajo y acierto), en la
línea de tiempo principal, seleccionamos el fotograma 12 y con F5 creamos
fotogramas idénticos, seleccionamos dicho botón y desde el lanzador pulsamos
Mostrar acciones, en acciones básicas, hacemos doble clic sobre Play,
en la pantalla de acciones aparecerá: on (press) {
play ();
}
Si nos ponemos sobre la línea on (press) { aparecerá
en la parte inferior del panel acciones, una serie de botones seleccionables
como: press, release, etc... Esto quiere decir que el controlador on
(mouseEvent) dispone de esas opciones y por lo tanto podríamos elegir
uno o varios eventos que disponemos para desencadenar esa acción. Nos
quedamos con press.
Volvemos a la película, cerramos el panel acciones y en una nueva capa
que se llamará animación, creamos una interpolación de movimiento de,
por ejemplo, un rectángulo que se mueva por el escenario, que abarcará
hasta el fotograma 12. En una nueva capa que llamaremos acciones y que
situaremos al fondo de las capas, en el fotograma 1 añadimos un cuadro
clave vacío F7, lo seleccionamos (el fotograma) y abrimos de nuevo el
Panel acciones y en acciones básicas, elegimos stop, esto hará que se
detenga la película en el primer fotograma.
Añadimos otro fotograma clave vacío en el fotograma 5 y 12, repitiendo
los pasos anteriores (elegimos stop). Ahora vamos a probar la película,
pulsamos enter+control
y ... vemos que funciona...!
Ya hemos visto como funcionan las acciones stop y play
Go to
En la misma película anterior vamos a probar otra acción, para ello eliminamos
la capa acciones y crearemos una nueva que llamaremos igual. En el fotograma
12 creamos un fotograma clave vacío y en el panel acciones elegimos Go to,
en cuadro de opciones del panel acciones, seleccionamos en Frame, 5 y desactivamos
la casilla Go To And Play con lo que nos queda: gotoAndStop (5);
Probamos la película y observamos que la película cuando llega al final
salta al fotograma 5 y se para, si apretamos el botón que tenemos en el
escenario se reproduce la película pero solo desde el fotograma 5.
Ahora volvemos al escenario y seleccionamos el botón, abrimos el panel de
acciones y borramos la acción Play con el botón "-"; nos vamos
a acciones básicas y arrastramos Go to, para empezar la película desde el
fotograma 1 y reproducir, nos quedará: on (release) {
gotoAndPlay (1);
} Probamos la película.
¡Ya hemos aprendido a manejar, los controles básicos de la película!
Stop All Sounds
Imaginemos que en la película, anterior hemos metido en un fotograma una
música machacona que mola ..., pero que al cabo de un rato cansa, pues
vamos a añadir un botón, en la capa botones que en el estado sobre,
ponga Quitar sonido. Lo seleccionamos y en el panel acciones hacemos doble
clic en Stop All Sounds y nos quedará el código: on (release) {
stopAllSounds ();
}
Probamos la película y al pulsar el botón
la música desaparece.
Guardamos en una carpeta y la vamos a llamas pruebas.fla.
Get URL
Ahora vamos a probar en una nueva película varias acciones, para ello
guardamos la película nueva como pruebas2.fla en la misma carpeta
que la anterior.
Get URL es una acción que nos permite abrir una ventana de una dirección
de Internet; en el cuadro de texto URL, introducimos una dirección de
correo.
En Ventana, tenemos las opciones self (abre la dirección URL
en la misma ventana en la que estamos trabajando) blank, abre una página
en blanco, parent en el marco principal (si es que tenemos una página
con marcos), Top, en el marco de arriba.
En variables, tenemos tres opciones que las dejamos para más adelante.
Así nos queda: on (release) {
getURL ("www.logosite.net", "_self");
}
Guardamos.
Esto nos abriría la página de logosite.net en la misma ventana
principal del navegador.
Opciones de publicación
Ahora vamos a configurar las opciones de publicación. Seguimos con la
película anterior dentro de Flash.
En el Menú archivo-> Propiedades de publicación. Aparece un cuadro
de diálogo en el que se muestran todos los archivos en los que
flash puede exportar, en cada pestaña de los programas que tengamos activados,
aparecen una serie de propiedades de exportar.
Pinchamos sobre la pestaña HTML y nos ponemos a jugar con las configuraciones.
Por ejemplo, porcentaje al 100%, para que nuestra película se muestre
en su totalidad.
Nota. Es conveniente realizar todo tipo de cambios en la configuración
de nuestra película. No tengáis miedo de tocar, cuanto mas
mejor...ya se sabe!
Cuando terminemos damos al botón de publicar (los archivos publicados
se guardan en la misma carpeta que los habíamos guardado previamente)
y con la tecla F12 (Navegador predeterminado) vemos la animación en el
navegador, pulsamos el botón de la película y si estamos conectados, nos
aparecerá la página web en la ventana que hallamos seleccionado
en Ventana, en este caso en la misma ventana.
Load Movie
Ahora vamos a editar de nuevo el botón, eliminamos las acciones de Get
URL, y en el panel acciones, hacemos doble clic en Load Movie, nos situamos
en la línea de LoadMovie y aparecen una serie de opciones:
URL, ahí escribimos la película en formato .swf (reproductor Flash), pruebas.swf
, en location dejamos level y escribimos 1, esto es la profundidad de
la capa en la película principal (En este caso se cargaría la película
en dicho nivel y si hubiese otro clip en este mismo nivel, desaparecería).
Y en Variables, lo dejamos como está. Nos queda: on (release) {
loadMovieNum ("pruebas.swf", 1);
}
También podemos hacer que la película
se cargue en otro "movie clip" dentro de nuestra película,
para ello, en ubicación elegimos Destino, y señalamos la
ruta de acceso al MClip(dentro de la película )
El MClip que se carga, tiene que estar en la misma carpeta que la película
principal. on (release) {
loadMovie ("pruebas.swf", "_root.cargaPeli");
}
Ahora nos vamos a la capa botones y editamos un nuevo botón, lo colocamos
junto al otro, lo seleccionamos, abrimos el panel acciones y hacemos doble
clic en Unload Movie, en Ubicación escribimos 1, nos queda: on (release) {
unloadMovieNum (1);// o unloadMovieNum ("_root.cargaPeli");
}
y probamos la película.
El nivel 0 corresponde al nivel de la linea de tiempo principal, si en
location hubiéramos puesto:
on (release) {
loadMovieNum ("pruebas.swf", 0);
}
Al pulsar sobre el botón nos eliminaría la película principal, que en
Flash, a nivel de código se llama _root.
Pruébalo.
Nota. Al cargar una película con Load, esta
se cargará en la pelicula principal sin ningún control,
si vamos a cargar una peli en otro destino(clip de película), editar
el clip padre de tal forma que quede en el eje 0,0 (_x e _y).Y editar
la película hijo dándoles las dimensiones del clip padre.
With y Tell Target
Permite controlar acciones sobre otra película,
por ejemplo , el alfa de otra película.
Vamos a crear una nueva película, en la cual vamos a insertar un clip
de película de la biblioteca, con una interpolación de movimiento (una
bola botando), seleccionamos el clip y en el panel instancia la llamaremos
"bola".
Colocamos un botón en el escenario y en acciones seleccionamos Tell target;
en target, escribimos "_root.bola".
En la sentencia elegimos setProperty, y _alpha. En Valor escribimos 50
y activamos la casilla Expresión, nos queda: on (release) {
tellTarget ("bola") {
setProperty ("_root.bola", _alpha, 50);
}
}
Probamos la película.
La sentencia SetProperty contiene además, mas propiedades que podemos
usar de la misma manera. Pruébalas.
Tell target se ha desestimado en Flash 5 en su lugar se utiliza
la sentencia with, que funciona de la misma manera que tell target:
on (release) { with ("bola") {
setProperty ("_root.bola", _alpha, 50);
}
}
Si os interesa ActionScript avanzado escribirme
a actionScrip@logosite.net
y si sois muchos, haré un nuevo curso.
Escribirme también para críticas, sugerencias, etc.