Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Matheus Reis

Loading

Recommended Posts

oinoiskitraveis

 

galera ... como faço pra parar meu filme no inicio e so dar play depois q tudo estiver sido carregado, inclusive imagens carregadas dinamicamente.

olhem este site - http://www.lourencosta.com.br/novo/

 

tem 5 imagens que sao carregadas dinamicamente do tipo

loadMovie("img.jpg","alvo");
qiuero que o filme so de play depois q todas as imagens carregadas assim forem realmente carregadas para nao ficar sem a imagem no meio da animacao

 

thx

Compartilhar este post


Link para o post
Compartilhar em outros sites

oinoiskitraveisgalera ... como faço pra parar meu filme no inicio e so dar play depois q tudo estiver sido carregado, inclusive imagens carregadas dinamicamente.olhem este site - http://www.lourencosta.com.br/novo/tem 5 imagens que sao carregadas dinamicamente do tipo

loadMovie("img.jpg","alvo");
qiuero que o filme so de play depois q todas as imagens carregadas assim forem realmente carregadas para nao ficar sem a imagem no meio da animacaothx
Existem várias maneiras de se fazer isso, dependendo da estrutura e da maneira de carregamento..Uma dessas maneiras pode ser você coloca uma variavel na última coisa que você vai carregar, tipo tudocarregado=true;E depois você cria uma verificação onEnterFrame no começo do filme, para ver se essa variavel está setada como true e dar play na animação.A classe MovieClipLoader é bem legal para você utilizar, carregar e gerenciar o progresso dos loads ... tenta estudar ela e utilizá-la, que vai ser bem mais prático para você.Abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara ...to ficando doido...

 

segui seu conselho e usei a classe MovieClipLoader ...

analisa meu codigo !

//funcao que sorteia numerosfunction randRange(min, max) {	randomNum = Math.floor(Math.random()*(max-min+1))+min;	return randomNum;}//declarando o arrayvar numeros:Array = new Array();for (i=0; i<5; i++) {//este for serva pra gerar 1 loop de 5 vezes	n = randRange(1, 10);//sorteia numeros	for (k=0; k<5; k++) {//este for compara em todo o array se o numero ja foi sorteado		if (n == numeros[k]) {//verificacao			n = randRange(1, 10);//se sim sorteia outro		}	}	numeros[i] = n;}// Criando um objeto MovieClipLoadercarregadorMCL = new MovieClipLoader();//Quando iniciar o carregamento do swf externo...carregadorMCL.onLoadStart = function() {	trace("começou o carregamento...");};// Quando estiver em carregamento...carregadorMCL.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) {	trace(target+"  - Carregado :  "+bytesLoaded+" bytes de "+bytesTotal);};//Quando o carregamento finalizar...carregadorMCL.onLoadComplete = function() {	trace("Finalizado...");	play();};// Puxando o filho.swf para ser carregado em "swfLoader"// Todos os eventos acima só funcionarão após o loadClip , sem ele nada funciona.trace("T - frame - foto");for (t=0; t<5; t++) {	fotos.img.gotoAndStop(t+1);	carregadorMCL.loadClip("fotos/"+numeros[t]+".jpg",fotos.img.alvo);	trace(t+" - "+fotos.img._currentframe+" - "+numeros[t]);}trace(fotos._currentframe);

so q esse ultimo for seria pra puxar 1 imagem de cada posicao do array pra cada frame do meu mc alvo, localizado dentro de fotos.img ....

 

ele faz isso.. so que quando da play no fuilme ele so exibe a ultima imagem !!

 

so jesus mesmo ..

 

help me !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara ...to ficando doido...

 

segui seu conselho e usei a classe MovieClipLoader ...

analisa meu codigo !

//funcao que sorteia numerosfunction randRange(min, max) {	randomNum = Math.floor(Math.random()*(max-min+1))+min;	return randomNum;}//declarando o arrayvar numeros:Array = new Array();for (i=0; i<5; i++) {//este for serva pra gerar 1 loop de 5 vezes	n = randRange(1, 10);//sorteia numeros	for (k=0; k<5; k++) {//este for compara em todo o array se o numero ja foi sorteado		if (n == numeros[k]) {//verificacao			n = randRange(1, 10);//se sim sorteia outro		}	}	numeros[i] = n;}// Criando um objeto MovieClipLoadercarregadorMCL = new MovieClipLoader();//Quando iniciar o carregamento do swf externo...carregadorMCL.onLoadStart = function() {	trace("começou o carregamento...");};// Quando estiver em carregamento...carregadorMCL.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) {	trace(target+"  - Carregado :  "+bytesLoaded+" bytes de "+bytesTotal);};//Quando o carregamento finalizar...carregadorMCL.onLoadComplete = function() {	trace("Finalizado...");	play();};// Puxando o filho.swf para ser carregado em "swfLoader"// Todos os eventos acima só funcionarão após o loadClip , sem ele nada funciona.trace("T - frame - foto");for (t=0; t<5; t++) {	fotos.img.gotoAndStop(t+1);	carregadorMCL.loadClip("fotos/"+numeros[t]+".jpg",fotos.img.alvo);	trace(t+" - "+fotos.img._currentframe+" - "+numeros[t]);}trace(fotos._currentframe);
so q esse ultimo for seria pra puxar 1 imagem de cada posicao do array pra cada frame do meu mc alvo, localizado dentro de fotos.img ....

 

ele faz isso.. so que quando da play no fuilme ele so exibe a ultima imagem !!

 

so jesus mesmo ..

 

help me !!!

Amigo, não sei se entendi bem... mas é o seguinte, ele está dando play sim. Só que você está carregando todos os mcs dentro do alvo, então ele vai substituindo.. para tivar a prova, coloque esse onEnterFrame no código:

 

ACTIONSCRIPT
_root.fotos.img.onEnterFrame = function() {

 trace(this._currentframe);

};

 

Dae ele vai traçar o frame que está exibindo.. dae você vai ver que ele está dando o play, mas exibe a msm foto sempre.

 

Dae então, você deve duplicar o seu mc alvo para carregar cada imagem em um mc diferente, substituindo o ultimo loop por esse:

 

ACTIONSCRIPT
for (t=0; t<5; t++) {

 fotos.img.gotoAndStop(t+1);

 var av = _root.fotos.img.alvo.duplicateMovieClip("alvo"+(t+1),t+1,{_x:0,_y:0});

 trace(av)

 carregadorMCL.loadClip("fotos/"+numeros[t]+".jpg", av);

 trace(t+" - "+fotos.img._currentframe+" - "+numeros[t]);

}

 

Mas dae deparamos com um problema, ele vai sobrepor todas as imagens.. e daria na msm..srsrsr.

Mas já é esse o caminho.

 

Pq o ideal não é você colocar um em cada frame, e sim, fazer via action, que em cada frame ele exiba uma foto e oculte as outras...

Dae você troca o enterFrame que eu passei acima, e o onLoadComplete, por isso:

 

 

ACTIONSCRIPT
//Quando o carregamento finalizar...

carregadorMCL.onLoadComplete = function() {

 trace("Finalizado...");

 _root.fotos.img.play();

};

_root.fotos.img.onEnterFrame = function() {

 trace(_root.fotos.img._currentframe)

 for (t=0; t<5; t++) {

  if(t==_root.fotos.img._currentframe){

   _root.fotos.img["alvo"+(t+1)]._visible=true;

  }else{

   _root.fotos.img["alvo"+(t+1)]._visible=false;

  }

 }

};

 

Dae então o código completo ficaria:

 

ACTIONSCRIPT
//funcao que sorteia numeros

function randRange(min, max) {

 randomNum = Math.floor(Math.random()*(max-min+1))+min;

 return randomNum;

}

//declarando o array

var numeros:Array = new Array();

for (i=0; i<5; i++) {

 //este for serva pra gerar 1 loop de 5 vezes

 n = randRange(1, 10);

 //sorteia numeros

 for (k=0; k<5; k++) {

  //este for compara em todo o array se o numero ja foi sorteado

  if (n == numeros[k]) {

   //verificacao

   n = randRange(1, 10);

   //se sim sorteia outro

  }

 }

 numeros[i] = n;

}

// Criando um objeto MovieClipLoader

carregadorMCL = new MovieClipLoader();

//Quando iniciar o carregamento do swf externo...

carregadorMCL.onLoadStart = function() {

 trace("começou o carregamento...");

};

// Quando estiver em carregamento...

carregadorMCL.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) {

 trace(target+"  - Carregado :  "+bytesLoaded+" bytes de "+bytesTotal);

};

//Quando o carregamento finalizar...

carregadorMCL.onLoadComplete = function() {

 trace("Finalizado...");

 _root.fotos.img.play();

};

_root.fotos.img.onEnterFrame = function() {

 trace(_root.fotos.img._currentframe)

 for (t=0; t<5; t++) {

  if(t==_root.fotos.img._currentframe){

   _root.fotos.img["alvo"+(t+1)]._visible=true;

  }else{

   _root.fotos.img["alvo"+(t+1)]._visible=false;

  }

 }

};

// Puxando o filho.swf para ser carregado em "swfLoader"

// Todos os eventos acima só funcionarão após o loadClip , sem ele nada funciona.

trace("T - frame - foto");

for (t=0; t<5; t++) {

 fotos.img.gotoAndStop(t+1);

 var av = _root.fotos.img.alvo.duplicateMovieClip("alvo"+(t+1),t+1,{_x:0,_y:0});

 trace(av)

 carregadorMCL.loadClip("fotos/"+numeros[t]+".jpg", av);

 trace(t+" - "+fotos.img._currentframe+" - "+numeros[t]);

}

trace(fotos._currentframe);

 

Testa ae e me fala.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara ... quase .. falta pouco.

deu certo o lance do duplicate, parabens. eu sempre tive problema em coseguir visualizar "mc´s virtuais" rsrsrs

so uma coisinha. esse codigo coloquei no 1o quandro do filme principal, e eu queria que ele so desse o play(); depois que carregasse as 5 imagens aleatorias, para que depois na animacao nao tivesse bug (parasse sem nada a animacao).

mas ele esta dando play sem esperar as imagens carregarem.

 

http://www.lourencosta.com.br/novo/teste/

 

ve se ai ele para. aqui parou .

 

ele nao carrega a 5 imagem, seja ela qual for, nao sei pq. ..

 

desde ja valeu . e parabens pelo conhecimento.

Compartilhar este post


Link para o post
Compartilhar em outros sites

CONSEGUI !!!!!!!!!!!!!!!!!!!!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif :D :D :D :D :D

 

ALTEREI 2 for´s para comecar de 1 ate <6 ...

batata ...

na verdade isso aconteceu pq nao existe frame 0 na linha de tempo .. ai ele comecava a salvar no 2 ja e deixava o 1 embranco... algo assim ..

agora deu !!!

 

 

FINAL CODE !!!

 

ACTIONSCRIPT
//funcao que sorteia numeros

function randRange(min, max) {

        randomNum = Math.floor(Math.random()*(max-min+1))+min;

        return randomNum;

}

//declarando o array

var numeros:Array = new Array();

for (i=1; i<6; i++) {

        //este for serva pra gerar 1 loop de 5 vezes

        n = randRange(1, 10);

        //sorteia numeros

        for (k=0; k<6; k++) {

                //este for compara em todo o array se o numero ja foi sorteado

                while (n == numeros[k]) {

                        //verificacao

                        n = randRange(1, 10);

                        //se sim sorteia outro

                }

        }

        numeros[i] = n;

        trace(n);

}

// Criando um objeto MovieClipLoader

carregadorMCL = new MovieClipLoader();

//Quando iniciar o carregamento do swf externo...

carregadorMCL.onLoadStart = function() {

        trace("começou o carregamento...");

};

// Quando estiver em carregamento...

carregadorMCL.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number) {

        trace(target+"  - Carregado :  "+bytesLoaded+" bytes de "+bytesTotal);

};

//Quando o carregamento finalizar...

carregadorMCL.onLoadComplete = function() {

        trace("Finalizado...");

        _root.fotos.img.play();

};

_root.fotos.img.onEnterFrame = function() {

        for (t=1; t<6; t++) {

                if (t == _root.fotos.img._currentframe) {

                        _root.fotos.img["alvo"+(t)]._visible = true;

                } else {

                        _root.fotos.img["alvo"+(t)]._visible = false;

                }

        }

};

// Puxando o filho.swf para ser carregado em "swfLoader"

// Todos os eventos acima só funcionarão após o loadClip , sem ele nada funciona.

trace("T - frame - foto");

fotos.img.gotoAndStop(0);

for (t=1; t<6; t++) {

        fotos.img.gotoAndStop(t);

        var av = _root.fotos.img.alvo.duplicateMovieClip("alvo"+(t), t, {_x:-302.3, _y:-203.6});

        trace(av);

        carregadorMCL.loadClip("fotos/"+numeros[t]+".jpg",av);

        trace(t+" - "+fotos.img._currentframe+" - "+numeros[t]);

}

 

obrigado a todos !!!!!!!!

 

http://www.lourencosta.com.br/novo/teste/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.