Ir para conteúdo

POWERED BY:

Arquivado

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

David Borges

MovieClip não para!

Recommended Posts

Olá galera!! Estou com dificuldade de parar um movie clip.

 

É o seguinte, criei duas setas, esquerda e direita, e no centro fica uma imagem com outras do lado.

 

O usuário clica nas setas e o slide de imagens anda para esquerda ou direita conforme clicado.

 

Fiz da seguinte forma:

 

- Criei um movieclip com essas imagens (poucas... 6);

- do lado de fora coloquei as duas setas (esquerda e direita)

- Nas setas coloquei as actions:

 

Esquerda

on (release) {

frente = true;

tras = false;

}

 

Direita

on (release) {

frente = false;

tras = true;

}

 

- No MC coloquei a action:

onClipEvent (enterFrame) {

if (_root.frente) {

nextFrame();

} else {

prevFrame();

}

}

 

- Dentro do MC coloquei os Stop(); nos pontos onde quero que o MC pare.

 

Agora o problema... ele até vai para esquerda e direita (a timeline anda para frente e para trás) conforme eu criei, mas ela não está respeitando os Stop(); do MC.

 

Alguém sabe como faço para contornar esse problema??

 

Obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O enterFrame não respeita o stop()

 

Se você não deletar o evento ele continua ocorrendo.

Você tem que fazer

 

if(this._currentFrame == x) delete this.enterFrame;

 

Ou algo do genero.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

O enterFrame não respeita o stop()

 

Se você não deletar o evento ele continua ocorrendo.

Você tem que fazer

 

if(this._currentFrame == x) delete this.enterFrame;

 

Ou algo do genero.

 

Abraços

 

Olá Thiago, obrigado pela resposta.

 

Ainda estou começando em flash e estou com dificuldade em aplicar essa sua solução no meu exemplo.

 

Achei um outro tópico com um problema semelhante ao meu no http://forum.imasters.com.br/index.php?/topic/410428-comando-delete-this-onenterframe/, e tentei resolver colocando dentro do MC, em cada frame onde é necessário a animação parar, a seguinte action:

 

stop();

delete this.onEnterFrame;

 

Mas infelizmente não deu certo. A animação passar pelos frames e não para.

 

Pode me dar uma explicação de como posso resolver esse problema?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assim não vai funcionar, você precisa fazer como o Thiago falou testar uma condição e deletar o evento.

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Matheus, falha minha, acabei não comentando que tentei fazer como o Thiago disse mas não tive sucesso.

 

No frame onde meu MC deveria parar adicionei o if(this._currentFrame == 10) delete this.enterFrame;, mesmo assim ele não parou.

 

Mais uma vez, obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu falei que era algo do genero e não que iria funcionar.

 

Como você ta usando on(enterFrame)

 

Tente fazer isso sem ser com on...

E sim colocando as ações no frame para maiores controles... on é linguagem antiga e não tem todas as facilidades de controle.

 

O que você quer fazer é algo assim:

mc.onEnterFrame = function(){
 if (_root.frente) {
 	if(this._currentframe == 60){
 	nextFrame();
 	}else {
 	delete mc.onEnterFrame;
 	}
 } else {
 	if(this._currentframe == 10){
 	prevFrame();
 	}else {
 	delete mc.onEnterFrame;
 	}
 }
}

 

Seria algo assim que você quer.

 

Abraços

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.