Comunidad de diseño web y desarrollo en internet online

PROBLEMA, AYUDA CON PRELOADER

Citar            
MensajeEscrito el 03 Nov 2009 10:34 pm
Buenas noches, el problema es el siguiente...
Tengo un preloader externo que carga otro swf. Lo que pasa es que cuando va 30% aproximadamente del preloader la otra pelicula comienza a reproducirse y cuando desaparece el preloader la pelicula ya va por la mitad de su reproduccion...
(Ver: http://www.fernandokuyumchoglu.com.ar) Alli esta todo subido...

El codigo del preloader es el siguiente

var l:Loader = new Loader();
var mc:MovieClip = loading;
var mcc:MovieClip = efecto;
l.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loop);
l.contentLoaderInfo.addEventListener(Event.COMPLETE, done);

function loop(e:ProgressEvent):void
{
var perc:Number = e.bytesLoaded / e.bytesTotal;
percent.text = Math.ceil(perc*100).toString()+"%";
}

function done(e:Event):void
{
removeChildAt(0);
percent = null;
this.removeChild(mc);
this.removeChild(mcc);
addChild(l);
l.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, loop);
l.contentLoaderInfo.removeEventListener(Event.COMPLETE, done);
}
l.load(new URLRequest("presentacion.swf"));

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 03 Nov 2009 11:44 pm
Podrías interntar llamar a la función done, cuando el pocentaje de carga sea 100 (es decir, no llamarla en base al evento "complete"). Por ejemplo

Código ActionScript :

function loop(e:ProgressEvent):void
{
var perc:Number = e.bytesLoaded / e.bytesTotal;
percent.text = Math.ceil(perc*100).toString()+"%";

if(percent.text == "100%")
 done();

} 

function done():void
{
removeChildAt(0);
percent = null;
this.removeChild(mc);
this.removeChild(mcc);
addChild(l);
l.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, loop);
l.contentLoaderInfo.removeEventListener(Event.COMPLETE, done);
}

Por -YO-

27 de clabLevel



 

México

firefox
Citar            
MensajeEscrito el 04 Nov 2009 02:17 am
Estuve probando recien esto... y no hay caso che.. no entiendo que puede pasar!!! puse el done, saque el event complete, lo hize con event complete, no se que puede pasar!!! le pase a "e" (el parametro de loop) como referencia a done() ya que debe tener un parametro... pero no comprendo que sucede!! si alguien me puede dar una mano lo agradezco!!

Mako.

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 05 Nov 2009 02:46 pm
Alguna sugerencia?

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 05 Nov 2009 03:50 pm
Parece estar todo bien con tu precarga,prueba ponerle a tu swf de presentacion un stop(); en el primer frame y cuando entres a tu funcion done dale play();

Por Angel Roberto

Claber

248 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Nov 2009 04:48 pm
Tampoco, lo que sucede ahora es que el play no surte efecto.. carga la musica del flash pero la animacion se encuentra parada.
Voy a tratar de realizar algun otro preload yo que se... no puede ser que pase esto!!!

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 05 Nov 2009 05:36 pm
Si esta raro que pase..prueba con gotoAndPlay(2);

Por Angel Roberto

Claber

248 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Nov 2009 05:40 pm
Tampoco, ahora lo que probe haciendo es sacar el addchild(l) de la funcion done y ponerlo afuera con el l.load... y lo que sucede ahora es que comienza a mostrarme la pelicula pero el preload sigue cargando.. osea corre la pelicula y el preload por detras...

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 06 Nov 2009 04:24 am
nadie????

Por MakoLM

5 de clabLevel



 

msie8
Citar            
MensajeEscrito el 06 Nov 2009 03:46 pm
Lo que le pasa a tu preloader esta extraño sigo sin entender porq :S...prueba en tu presentacion poner en el primer frame un stop();
y en el segundo frame un play(); y cuando entres a tu funcion "done" manda llamar un l.content.gotoAndPlay(2); tal vez sea necesario un poco de casting MovieClip(l.content).gotoAndPlay(2);.

Aver si con eso obtienes el efecto deseado..sobre tu preloader habria que revisarlo de otra manera porq yo veo que tu codigo es correcto algo se debe estar dejando por alto en algun lado.

Por Angel Roberto

Claber

248 de clabLevel



 

firefox

 

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