Ir para conteúdo

POWERED BY:

Arquivado

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

QuArEnTeNa

[Resolvido] testar se uma animação terminou para executar instruç

Recommended Posts

Olá galera,

 

Tem como testar se uma animação chegou ao final para depois continuar a executar as demais instruções, ex.:

 

if(mc.play()){

 

trace("animacao acabou");

 

}

 

Algo assim ? Porque tenho que executar algumas coisas mas só quando essa animacao do movieclip terminar.

 

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

levando em consideração que sua animação foi feita via Timeline, em um objeto MovieClip, você pode fazer assim:

 

if(seu_mc.currentFrame == seu_mc.totalFrames){

   trace('Animação do seu_mc terminou');

}

porém é importante lembrar que enquanto a animação estiver ocorrendo você vai precisar ficar verificando essa condição, se colocar apenas assim ela vai ser verificada apenas uma vez. Para isso você pode usar uma função executada a partir de um evento ENTER_FRAME.

 

Outra forma, que pode ser mais interessante, de fazer isso é criar uma classe que estenda a MovieClip, e que envie um evento (um EVENT_COMPLETE, talvez) quando terminar a animação. Aí na biblioteca você põe essa sua animação para estender essa classe.

 

Nesse caso, é só monitorar o seu_mc com addEventListener, pra quando ele enviar o evento, você executa a função com os próximos passos =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

levando em consideração que sua animação foi feita via Timeline, em um objeto MovieClip, você pode fazer assim:

 

if(seu_mc.currentFrame == seu_mc.totalFrames){

   trace('Animação do seu_mc terminou');

}

porém é importante lembrar que enquanto a animação estiver ocorrendo você vai precisar ficar verificando essa condição, se colocar apenas assim ela vai ser verificada apenas uma vez. Para isso você pode usar uma função executada a partir de um evento ENTER_FRAME.

 

Outra forma, que pode ser mais interessante, de fazer isso é criar uma classe que estenda a MovieClip, e que envie um evento (um EVENT_COMPLETE, talvez) quando terminar a animação. Aí na biblioteca você põe essa sua animação para estender essa classe.

 

Nesse caso, é só monitorar o seu_mc com addEventListener, pra quando ele enviar o evento, você executa a função com os próximos passos =)

 

Olá, entendi o que disse e realmente seria melhor essas soluçoes que você colocou.. mas eu fiz de outra maneira aqui..

criei a função em um frame do palco principal e ai fui no mc que está animação e fui no ultimo frame fazer a chamada, mas ele diz que a função não existe.

 

Sabe porque ? Tem como criar uma função global ?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele diz que não existe por que a função não existe onde você a está chamando.

 

bom, tenta assim para chamá-la:

 

Object(root).suafuncao();

deve funcionar... só não conta pra ninguém que fui eu quem falei pra fazer isso http://forum.imasters.com.br/public/style_emoticons/default/natal_tongue.gif

 

cuidado com essas 'gambiarras', chega uma hora que elas podem te atrapalhar, e muito =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele diz que não existe por que a função não existe onde você a está chamando.

 

bom, tenta assim para chamá-la:

 

Object(root).suafuncao();

deve funcionar... só não conta pra ninguém que fui eu quem falei pra fazer isso http://forum.imasters.com.br/public/style_emoticons/default/natal_tongue.gif

 

cuidado com essas 'gambiarras', chega uma hora que elas podem te atrapalhar, e muito =)

 

rsrs.. quebrou um galhão.. pode deixar que não sai desse post rs..

 

Abraços e obrigado.

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.