Utilizar clases AS2 desde AS1

Escrito el 18/01/2004 por Xavi Beumala

Os parecerá una tontería pero creo que esto puede ser de gran utilidad y le veo más utilidades de las que el nombre indica.

Me encuentra en una situación en la que tengo que desarrollar una serie de clases que se van a utilizar desde el IDE de flash MX, sé que desde MX2004 puedo compilar para el player 6 y demás... pero es una larga historia...

En fin, para ello lo que hago es hacer mis clases utilizando as2. Con esto sólo genero los archivos .as

Después desde el IDE de MX2004 creo un archivo que sea clasesAS2.fla. En él sólo existirán sentencias del tipo:

import myNameSpace.myClass;
import myNameSpace.myClass2; //etc

Una vez he cargado todas las clases compilo para flash player 6 y obtengo clasesAS2.swf. Al hacer el import, lo que estamos haciendo es cargar las clases y pasan a estar disponibles en el ámbito global.

Ahora ya sólo falta cargar esas clases en el ide de MX. Eso lo hacemos con un simple loadMovie("clasesAS2.swf"). Una vez estemos seguros que el swf se ha cargado en su totalidad ya las podemos utilizar de forma normal:

foo = new myClass();
foo.sayHello();

Esto es posible a que myClass está cargada en _global.

Con esto podemos utilizar todas las clases de mx2004 desde el ide del MX. Otra utilidad que le veo a esto es una forma de no perder el montón de tiempo que se pierde al compilar en MX2004. La técnica esta del loadmovie también la podemos utilizar con 2004, esto nos permitirá que cada vez que tengamos que recompilar sólo tengamos que recompilar el archivo con los import's. El resto de archivos que utilicen esas clases, como las cargaran a partir de ese swf, no hará falta recompilarlor. Ufff... que lio :-S

.

En fin, espero que os sirva.