Comunidad de diseño web y desarrollo en internet online

como limpiar completamente todo codigo al cargar swf

Citar            
MensajeEscrito el 09 Sep 2014 05:36 pm
Hola. Tengo un problema extraño al cargar swfs

Estoy lllevando una serie de carga de swfs peli1.swf, peli2.swf, 3.swf etc...

Hay un swf principal que va cargando cada vez que llegan a totalFrame cada swf, carga el siguiente
El problema es que al cargar el siguiente swf , algunos traen codigo: Timers funciones vars etc y parece que esto afecta al cargar al siguiente

Como se puede limpiar por completo todo codigo del anterior antes de cargar el siguiente

Con esto cargo swfs:

Código :

// load SWF
function _loadMovieNum(param:Number):void
{
  var _cMovie = arrMovies[foo]+'.swf'; // current movie
  swfLoader = new Loader();
  swfLoader.load( new URLRequest(_cMovie) );
  swfLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, onLoadMovie );
}

function onLoadMovie( e:Event ):void 
{
  for (var i : int = cliploader.numChildren-1 ; i >= 0 ; i--)
  {
   cliploader.stop();
   cliploader.removeChildAt(i);
  }

  spr_ldr=MovieClip(swfLoader.content);
  cliploader.addChild(spr_ldr);

  mc = swfLoader.content as MovieClip;
  mc.play();
  mc.addEventListener(Event.ENTER_FRAME,goSentinel); //function(e:Event){goSentinel(mc,e);});
  trace('DONE!! totalFrames)',mc.totalFrames);
}

function goSentinel(e:Event)
{
  var largo = (mc.totalFrames>3000)?Math.floor(mc.totalFrames * 0.1):mc.totalFrames;
  var txt = 'FOO='+foo+' >> '+arrMovies[foo] + ' >> ' + mc.currentFrame+"/"+mc.totalFrames+' >> '+largo;
  test.text = txt; //(mc.currentFrame);
  
  if (mc.currentFrame > largo-1)
  {
  // trace('TERMINO PELI!!!');
  mc.removeEventListener(Event.ENTER_FRAME,goSentinel);
  foo++; // lla
  if (foo<arrMovies.length)
  {
    mc.stop();
   //SoundMixer.stopAll();
   _loadMovieNum(foo);
  } else {
    mc.stop();
    trace('TERMINO TODO DE TODO!!!');
  }
  }

}

Por comicSans

Claber

151 de clabLevel



 

chrome
Citar            
MensajeEscrito el 09 Sep 2014 05:53 pm
Mira si puedes reutilizar el mismo Loader declarandolo fuera de la funcion

var swfLoader:Loader = new Loader();

Y dentro de _loadMovieNum (nostalgia de AS2?) quitas esto

swfLoader = new Loader();

Asi reutilizarías el mismo Loader, pero antes de cargar el siguiente, quita el anterior

mc.stop();
swfLoader.unLoadAndStop()

Asi descargas y paras

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 09 Sep 2014 06:54 pm
_loadMovieNum XD JA cierto.. prometo cambiarlo: por _loadSWFNum :S (lol)

me pasaba algo extraño con un codigo, creo que unLoadAndStop salio al quite!

Por comicSans

Claber

151 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.