Incluir un fichero.as, pero sin la sentencia #include
3 seguidores
Saludos:
Mi intención es incluir dentro de actionscript un fichero con extensión as.
Lo hago con:
#include "mifichero.as"
Lo hace perfectamente, pero lo que pasa que el include lo hace en tiempo de compilación, es decir, una vez que exporto la película en swf, el compilador mete todo el codigo de mifichero.as dentro de la película principal.
Y lo que yo quiero es poder modificar externamente mifichero.as sin necesidad de tocar el fichero .fla.
No sé si existe otra sentencia o forma para hacerlo, he probado con import pero no funciona, solo es para clases.
Sabeis otro método de hacer esta dependencia de un fichero externo???
Gracias a todos.
jimena
jipipayo
(off topic) jimena, que web mas bonitaaaaaaaa :D
Vaya! gracias :D
Usuario desconocido
aja ,p ues entonces no es include lo que necesitas, es un loadvars hacia un archivo externo, sea xml,txt, o lo que te de la gana.
(off topic) jimena, que web mas bonitaaaaaaaa :D
hecspc
lo que pides es imposible (al menos por ahora).
Para que los cambios realizados en el codigo fuente esten en el archivo compilado (en este caso el .swf) se ha de compilar antes. Esto es así en todos los lenguajes de programación. Lo único que se puede cambiar en "tiempo real" son lo valores de las variables como lo puedes hacer con el debugger (o con loadVariables o etc).
Lo mismo pasa por ejemplo en php, lo que ocurre que aqui la compilación la hace el servidor de php cuando accedemos a la pagina, es decir, si hacemos un cambio en un codigo php hemos de refrescar (compilar) la pagina con nuestro explorador para que se vean los nuevos cambios no? Y lo que hacemos es compilar los nuevos datos para que lo acepte el navegador.
Lo mismo ocurre con flash... si tu realizas un cambio en el codigo fuente has de compilarlo para que se reflejen estos cambios, ya que el .swf no hace ningún tipo de llamada externa a los archivos .as despues.
Yo no conozco ningun lenguaje de programación que admita un cambio de las fuentes sin previa compilación (es que en sí ya suena imposible) pero no descarto que se esté investigando en ello.. .eso sí , si se pudiera el problema entonces sería como ocultar el codigo fuente porque si yo puedo ver el .swf y el .swf puede ver el .as entonces yo puedo ver el .as tambien... en otras palabras: los amigos de mis amigos son mis amigos.
la idea de la existencia de los .as es la organización de la programación y tambien así ser un lenguaje más modular.
termica
La necesidad de tener código fuera, es para tocar solo una serie de datos que necesito que sean accesibles para más gente, sin necesidad de tocar nada dentro de flash ...
Por eso quería un fichero externo para que con solo cambiarlo se actualizaran los datos en el swf.
Lo que he visto, que si abro el fichero swf con un programa de apertura de codigo (como actionscript viewer), lo que veo que en el codigo que se genera, el include no aparece, y lo que aparece es el texto del fichero introducido directamente.
jimena
Los ficheros .as contienen código actionscript, es decir, funciones, eventos... no hay otra forma de cargarlo que no sea mediante un include, un swf no puede estar leyendo el código a ejecutar en un archivo externo.
Otra cosa es si quieres cargar solo el valor de una variable, en ese caso puedes usar cualquier archivo con formato de texto plano y cargarlo con un loadMovie o loadVars
Usuario desconocido
pos mete el include en un onload...
mhh aunque no se si te va a funcionar, porque segun el manual....
<code>#include:
includes the contents of the file specified in the parameter when the movie is tested, published, or exported. The #include action is invoked when you test, publish, or export.</code>
lo raro es que necesites cambiar el actionscript en tiempo real?
no será para cargar variables externas, mas que para cambiar el código?
a lo mejor deberias ver si un Loadvars, se adapta a lo que quieres hacer...