Foros del Web » Creando para Internet » Flash y Actionscript »

Cargar swf externo y hacer que el anterior pare

Estas en el tema de Cargar swf externo y hacer que el anterior pare en el foro de Flash y Actionscript en Foros del Web. Saludos, Estoy haciendo un juego educativo en as3.0, tengo 7 capitulos (osea 7 swf) + otros swf de intros, creditos ,etc ... Lo que quiero ...
  #1 (permalink)  
Antiguo 11/04/2012, 11:36
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Cargar swf externo y hacer que el anterior pare

Saludos,

Estoy haciendo un juego educativo en as3.0, tengo 7 capitulos (osea 7 swf) + otros swf de intros, creditos ,etc ...

Lo que quiero es hacer lo siguiente:

Cuando llego al final de cada capitulo, tengo un boton que hace esto:

Al dar click, avanza unos 5 frames mas (se va todo a negro) y !!\como hago para que/!! en ese frame me cargue el swf externo, pero que el anterior swf se apague o se cierre... El motivo es que si estoy en el capitulo final ... todos los swf externos cargados van a seguir prendidos y eso ocuparia mucha meroria del computador ...

en as2 es
loadmovie....
y hay un unloadmovie.. que es el que apaga al swf de abajo ...

Necesito eso pero para as3.0..

GRACIAS !!!
__________________
Juan David V.
Diseñador Multimedia
  #2 (permalink)  
Antiguo 11/04/2012, 13:44
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Hola Juandavo:
En AS3 existe el removeChild(); en la Ayuda del Flash lo tienes bien explicado de como utilizarlo, simplemente escribe ese scrip y presiona la tecla F1.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #3 (permalink)  
Antiguo 12/04/2012, 08:31
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Agradezco tu respuesta.... pero buscare... complicado encontrar ahi ........
__________________
Juan David V.
Diseñador Multimedia
  #4 (permalink)  
Antiguo 12/04/2012, 08:47
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Estan en ingles esas ayudas .... solo necesito cargar en un frame especifico un swf externo y que al que estaba abierto lo apague o lo cierre ... me imagino que es con addChild(); y removeChild(); pero no se como utilizarlos ...

AYUDAME CON ESO POR FA !!

GRACIAS
__________________
Juan David V.
Diseñador Multimedia
  #5 (permalink)  
Antiguo 12/04/2012, 09:16
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Que tal Bandit, estuve buscando en este foro y encontre como cargar el swf externo en frame especifico y es asi :

stop();

var urlSWF:URLRequest = new URLRequest("2MiFamiliaNuestrosHogares.swf");
var cargarSWF:Loader = new Loader();
cargarSWF.load(urlSWF);
this.addChild(cargarSWF);

Ahora lo que quiero es que ahi mismo en ese frame me pagague al swf anterior, porque ya esta cargado el nuevo swf .. como lo hago ??

AYUDAME SOLO CON ESO POR FA !!

GRACIAS !!
__________________
Juan David V.
Diseñador Multimedia
  #6 (permalink)  
Antiguo 13/04/2012, 10:33
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

AYUDENME POR FA !!! ES DE URGEN !!!
LO EXPLICO BIEN :

Tengo varios swf (como11swf).... todos tienen el mismo tamaño y as3.0, cuando llego al final de algun swf (cualquiera), tengo un boton (siguiente) que hace lo siguiente:

Doy click en el boton siguiente ("EL BOTON ESTA EN EL FRAME 40"): ME LLEVA AL FRAME "60" ASI:

stop();

ircapitulo2_btn.addEventListener(MouseEvent.CLICK, ircap2);
function ircap2(e:MouseEvent):void {

gotoAndPlay("Capitulo2");
}

En el label Capitulo2 (todo va a negro). ESTAMOS EN EL FRAME "60"

EN EL FRAME "60" cargo el nuevo swf... con este codigo:

stop();

var urlSWF:URLRequest = new URLRequest("2MiFamiliaNuestrosHogares.swf");
var cargarSWF:Loader = new Loader();
cargarSWF.load(urlSWF);
this.addChild(cargarSWF);

Ahora COMO HAGO ?? PARA QUE EN ESE FRAME "60" EL SWF ANTERIOR SE APAGUE O SE CIERRE?? SE QUE ES CON removechild(); PERO NO SE COMO PONERLE... pero quiero que el swf anterior se cierre en ese FRAME 60 porque sino todo se vuelve muy pesado ..

AYUDA CON ESO !!!!

GRACIAS !!!
__________________
Juan David V.
Diseñador Multimedia
  #7 (permalink)  
Antiguo 13/04/2012, 16:32
 
Fecha de Ingreso: abril-2008
Mensajes: 613
Antigüedad: 16 años
Puntos: 22
Respuesta: Cargar swf externo y hacer que el anterior pare

Hola,
Yo tengo un truco con este tema pero depende de la estructura principal que tengas.
El tema consiste en cargar los swf externos en un clip vacío que está en el escenario principal.
Cuando quiero descargar el clip y cargar otro contenido, salto a a otro frame en la línea principal donde tengo otro clip vacío, en una capa diferente al anterior y con diferente nombre de intancia. Esto hace que, al no estar el clip contenedor en el escenario, se desturye automáticamente. Espero sepas aplicarlo.

Saludos
__________________
Compartir es vivir
www.programador-php.com
  #8 (permalink)  
Antiguo 13/04/2012, 21:56
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Si te entiendo pero eso no me sirve igual no creo poder aplicarlo... los swf son completamente diferentes y ocupan el mismo tamaño de 800x600 y son secuenciales... son archivos completamente diferentes y muy grandes ......cada swf llega a frames 2000 asi ... son muy largos ....
__________________
Juan David V.
Diseñador Multimedia
  #9 (permalink)  
Antiguo 14/04/2012, 12:12
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Hola Juandavo:
Al código que tienes en el frame 60 adiciónale: this.removeChild(aquí el nombre de la variable: XXXX: Loader = new Loader() que tienes para cargar el primer .swf);

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #10 (permalink)  
Antiguo 16/04/2012, 08:31
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Que tal Bandit !!

No se a que variable te refieres ... estoy en el primer swf realmente ..... no cargo el primer swf ... empiezo ahi ..... o no te estoy entendiendo ...

esta haci:

stop();

var urlSWF:URLRequest = new URLRequest("2MiFamiliaNuestrosHogares.swf");
var cargarSWF:Loader = new Loader();
cargarSWF.load(urlSWF);
this.addChild(cargarSWF);

this.removeChild(¿¿??¿¿??)

pero no se a que variable te refieres .....

El primer swf se llama cap1 ... pero no carga con codigo ... empiezo en ese swf .......

ESPERO ME ENTIENDAS !!
__________________
Juan David V.
Diseñador Multimedia
  #11 (permalink)  
Antiguo 16/04/2012, 11:06
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

En tu explicación dices que en el frame 40 tienes un botón por ende tienes allí un Fotograma clave vacío, entonces la película principal llega hasta el frame 39 y si en el frame 60 cargas una película, solamente esa se verá en el escenario, por lo tanto ya no será necesario usar: this.removeChil();.
Es muy confusa tu explicación, porque primero hablas que tienes un .swf y al carga otro el anterior quieres que desaparezca.
Sería mejor que subas tu .fla a un servidor para poderlo bajar y ver con exactitud como lo estás haciendo.

Espero poderte ser de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #12 (permalink)  
Antiguo 16/04/2012, 11:20
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Mira lo que pasa es que estoy trabajando en el cap1.swf .. cuando llego al FRAME 40 aparece el boton, doy click en el boton y me lleva al FRAME 60 asi: se va todo a negro...

stop();

ircapitulo2_btn.addEventListener(MouseEvent.CLICK, ircap2);
function ircap2(e:MouseEvent):void {

gotoAndPlay("Capitulo2");
}

Ahora en ese FRAME 60 cargo el cap2.swf asi:

stop();

var urlSWF:URLRequest = new URLRequest("2ContenidoCap2.swf");
var cargarSWF:Loader = new Loader();
cargarSWF.load(urlSWF);
this.addChild(cargarSWF);

Quiero que el cap1.swf se detenga en ese FRAME 60.... tengo audios diferentes en cada capitulo (son 7 capitulos) ..

Es necesario que lo detenga porque se montan los audios ... y pues si llego al cap7.swf y todos los anteriores swf estan prendidos eso va a ser muy pesado ...

SOLO NECESITO APAGAR EL CAP1.SWF EN EL FRAME 60 CON removechild(); PERO NO SE COMO APLICARLO ...

AYUDAME CON ESO POR FA ....

GRACIAS
__________________
Juan David V.
Diseñador Multimedia
  #13 (permalink)  
Antiguo 16/04/2012, 12:30
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Si lo que te molesta que no se quite el sonido, prueba utilizando en el frame 60: SoundMixer.stopAll();
Otra forma de eliminar todo sería cargando la otra película en otro HTML con el parámetro _self.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #14 (permalink)  
Antiguo 16/04/2012, 12:34
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Pues no Bandit ..... no es solo por el audio ... sino que realmente necesito quitar el primer swf .. y asi con todos ... quitar y poner el nuevo swf .... solo quisiera saber como utilizar el removechild(); en el FRAME 60 ............ :S :(
__________________
Juan David V.
Diseñador Multimedia
  #15 (permalink)  
Antiguo 16/04/2012, 13:12
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Al decir quitar el primer .swf te estás refiriendo a la película principal y donde se cargará el segundo .swf?.
Haz la segunda opción que te dije en mi post anterior o el contenido de la principal conviertelo en una película independiente y la cargas ni bien ingreses a tu página y así podrás usar el removeChild();

Espero haberte sido de yuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #16 (permalink)  
Antiguo 17/04/2012, 08:35
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Pues no es el swf principal ... antes van a ir otras peliculas swf .... que no estan hechas aun .... y pues el problema es que no se como usar el removechild();

O donde puedo ver un ejemplo de poner y quitar o apagar swf en as3.0 ? solo es 1 linea de codigo en el FRAME 60 con removechild(); que me quitaria al swf que estoy y me carga el nuevo ..... pero no se como ponerlo ....
__________________
Juan David V.
Diseñador Multimedia
  #17 (permalink)  
Antiguo 17/04/2012, 17:01
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Primero ponte de acuerdo contigo mismo, primero dices que no cargas el primer .swf y ahora dices que recién lo vas a construir, para que lo muestres en la principal a ese primer .swf, tienes que cargarlo con un código y sigue lo que te expliqué en mi post N° 2, que allí está la explicación de lo que debes de hacer.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/

Última edición por Bandit; 20/04/2012 a las 11:20
  #18 (permalink)  
Antiguo 18/04/2012, 08:50
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Como te explico ...
Es un cd interactivo donde hay : (MENU) Empresa, Juego, Creditos , Salir

Estamos dentro del juego ... el primer swf del juego .. faltan hacer otros swf que no son parte del juego que son : Empresa, Creditos ...... Salir solo sale del ejecutable......

El juego tiene 7capitulos... por eso digo es el primer swf del juego pero no precisamente el principal... Cuando abro el cd interactivo lo primero que se ve es el menu y una intro de info .....

Ahora si estoy en el (JUEGO) capt1.swf ... solo quiero cargar el capt2.swf en el frame 60 sin botones y hacer que EN ESE FRAME 60 se quite o se reemplace el capt1.swf para que no se vuelva pesado y no se mezclen los audios ...

Me dijero un amigo que en el frame 1 ponga esto:

var cargarSWF:Loader = new Loader();
this.addChild(cargarSWF);

Y en el frame 60 ponga esto: es donde quiero el otro swf

var urlSWF:URLRequest = new URLRequest("capt2.swf");
cargarSWF.load(urlSWF);

Supuestamente asi se reemplazaría el capt1.swf por el capt2.swf
Ahora me carga el capt2.swf pero encima del capt1.swf .. los audios se mezclan , es decir el audio de capt1.swf sigue sonando y el swf sigue ahi pero debajo .. luego seria muy pesado todo...
__________________
Juan David V.
Diseñador Multimedia
  #19 (permalink)  
Antiguo 18/04/2012, 10:27
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Mira me funciona asi .. : EN EL FRAME 60 TENGO ESTO:

stop();

var urlSWF:URLRequest = new URLRequest("capt2.swf");
var cargarSWF:Loader = new Loader();
cargarSWF.load(urlSWF);
this.addChild(cargarSWF);

y me carga perfectamente el capt2.swf.. solo necesito EN ESE FRAME quitar el cap1.swf ....sin boton ....
__________________
Juan David V.
Diseñador Multimedia
  #20 (permalink)  
Antiguo 18/04/2012, 10:46
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Pues tu amigo te engañó, porque al separar el código en el frame 1 y 60, es lo mismo que escribas en el frame 60 así:
Código actionscript:
Ver original
  1. var urlSWF:URLRequest = new URLRequest("capt2.swf");
  2. var cargarSWF:Loader = new Loader();
  3. cargarSWF.load(urlSWF);
  4. this.addChild(cargarSWF);
Y eso no hará que se descargue capt1.swf.
Y porque te preocupas por el peso de la película si es un .exe y eso sólo se verá en local.
Haz que la animación solamente llegue al frame 59 para que desaparezca del escenario y coloca el código que te di para eliminar el sonido.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #21 (permalink)  
Antiguo 18/04/2012, 11:03
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Mira todo el capt1.swf llega la FRAME40 ... cuando doy click en el boton del FRAME 40, avanzo al FRAME 60 ahi solo hay un mclip negro con opacidad .. (todo se va a negro)..

Me preocupo porque si no se descargan los swfs anteriores, cuando llegue al cap7.swf va a estar todo muy pesado .. si estoy en el capt7.swf van a estar cargados: capt1.swf,capt2.swf,capt3.swf,capt4.swf,cap51.swf, capt6.swf o no??

Como pongo bien el codigo para eliminar el sonido del capt1.swf y que frame??

GRACIAS !!
__________________
Juan David V.
Diseñador Multimedia
  #22 (permalink)  
Antiguo 20/04/2012, 10:38
Avatar de ramonjosegn  
Fecha de Ingreso: agosto-2011
Ubicación: Colombia
Mensajes: 651
Antigüedad: 12 años, 8 meses
Puntos: 40
Respuesta: Cargar swf externo y hacer que el anterior pare

Si es en CD yo realmente no me preocuparía demasiado de la carga de esos archivos externos, si fuera online sí es preocupante, has probado a ver cuánto ocupa en memoria todo lo que estás reproduciendo en tu máquina? es tan exagerado como para querer liberar memoria? si no es así, hasta sería mejor conservar elementos en memoria para acelerar la reproducción
  #23 (permalink)  
Antiguo 20/04/2012, 11:02
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Lo que pasa en que se va a pasar en colegios pobres.... obviamente no van a tener buenas computadoras y si el juego al final llega a trabarse se jode todo ... es por eso que especificamente en UN FRAME DETERMINADO quiero quitar SWFs .......

Dime como lo haria con el removechild(); por fa pero con los atributos segun mi proyecto por fa ... y lo pruebo ... en otros foros no tienen ni idea como solucionarlo .....

Me dijiste que ponga esto :
this.removeChild(aquí el nombre de la variable: XXXX: Loader = new Loader() que tienes para cargar el primer .swf);
pero que atributos pongo ?? nombre de variable?? XXXX ?? etc .. por fa

No se mucho sobre as3
__________________
Juan David V.
Diseñador Multimedia
  #24 (permalink)  
Antiguo 20/04/2012, 11:58
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Cargar swf externo y hacer que el anterior pare

Como lo quieres hacer no es posible ya que por ejemplo: capt1.swf tiene su propia línea de tiempo donde se cargará las otras desde su propio frame 60, por lo tanto no se puede quitar capt1.swf, porque donde se cargará capt2.swf?
Tendrás que reestructurar tu película para que todos los capt se carguen desde la principal.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #25 (permalink)  
Antiguo 20/04/2012, 12:24
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Woooowww me dejaste loco con esa respuesta... claro en FRAME 60 cargo capt2.swf ... mmmmmm

Es posible quitarlo desde capt2.swf ?? en cualquier FRAME ?? me imagino que ya no importa en que frame del capt2.swf lo quito porque igual no se ve.....

Como quitaría al capt1.swf desde el capt2.swf ?? ayudame con eso por fa !!

GRACIAS ... si lo puedo quitar esto quedaria resuelto ....... :D :D
__________________
Juan David V.
Diseñador Multimedia
  #26 (permalink)  
Antiguo 24/04/2012, 12:00
Avatar de Juandavo  
Fecha de Ingreso: octubre-2011
Ubicación: Quito
Mensajes: 85
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Cargar swf externo y hacer que el anterior pare

Puedes ayudarme solo con eso por fa??
__________________
Juan David V.
Diseñador Multimedia

Etiquetas: as3, loadmovie, swf, unloadmovie
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:09.