miércoles, 4 de agosto de 2010

Carrusel de imágenes en Flash usando poco actionscript

Me considero diseñadora, no programadora, pero me encanta el flash porque te da muchas opciones para mejorar las webs o animaciones. Esto que significa, que no doy pie con bola con el actionscript, me supera.

Así que tuve un cliente que necesitaba un flash en su web, en el que quería poner un montón de fotos y por supuesto que se vieran estupendamente porque era el reflejo de su negocio.

Al principio pues lo hice a lo bruto claro. Puse tooooodas las fotos con la mejor calidad que me permitía el programa sin que se empetara demasiado el swf. Pero la verdad, está feo que un swf pese un mega.

Pues a comerse el coco, mirar millones de blogs y foros que me dieran la solución. Lo único que conseguí fue un montón de ejemplos a base de un código interminable y un dolor de cabeza que hizo que odiara el flash.

Pero muchas veces la solución más sencilla es la mejor y la tenía en mis narices. ¿Por que no hacía una carpetita con todas las imágenes y creaba un cargador que ponía en la escena, con una pequeñiiiisima línea de código que llamara a cada imagen en el fotograma deseado?

Mano de santo...esa fue la solución ideal.

Te creas una carpeta con todas las imágenes a una resolución que se vea bien en web y que no pese mucho porque se tienen que ir cargando. Cuidado con la ruta luego cuando hayas creado el swf, hay que tener muy clarito donde va a ir cada archivo.

Ahora en el flash, pues creas un símbolo clip de película, llamado cargador y este lo vamos a ir duplicando y renombrando por cada imagen que queramos poner. Recomiendo que se renombren bien para evitar lios.

Por cada imagen, haces una capa, y en cada capa colocas el cargador correspondiente a la imagen de esa capa. A cada cargador, en el panel de propiedades hay que nombrarlo con el mismo nombre que tiene el cargador en cuestión, porque es de donde va a llamar el actionscript a la imagen de fuera y le va a decir donde colocarse. Este nombre debe estar en todos los fotogramas claves que tenga la línea de tiempo donde se encuentre el cargador, si no, puede hacer cosas raras, como desaparecer la imagen de la película.

Ahora vas distribuyendo las imágenes por la línea de tiempo como te vaya pareciendo una detrás de otra y le aplicas al cargador los efectos que quieras para tu imagen (alfa, desplazamientos, lo que se te ocurra)

Cuando esté hecho esto, haces una capa más y la colocas arriba del todo, denomínala AS, porque es donde va a ir el código.

En esa capa, vas a ir colocando un fotograma clave en el punto de la línea de tiempo donde va a ir apareciendo cada imagen. Y en cada fotograma clave se le va a meter la siguiente línea:

cargadorX.loadMovie("imgX.jpg")

Lo que va entre comillas es la ruta donde encontrar la imagen.


Tiene poco actionscript no?