Ir para conteúdo

POWERED BY:

Arquivado

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

natribo

Condição para detectar qual botao no frame

Recommended Posts

E ai Galera Preciso no flash detectar o botao através do key frame, ou seja;meu site tem 4 botoes , ao clicar no botao 1 ele segue através de um play até o frame 10, neste frame preciso ter uma condição parecida com issoif botaoclicado for 1gotoandplay (20)else ifbotaoclicado for 2gotoandplay (30)else ifbotaoclicado for 3gotoandplay (40)elsebotaoclicado for 4gotoandplay (50) end ifalguem pode me ajudar a fazer isso no flash?ObrigadoAndrei

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,No evento on release de cada botão atribua um valor para uma variável, por exemplo, 1, 2, etc. de acordo com o botão que foi clicado.Depois analise o valor da variável e envie através do goto para o frame desejado.Exemplo no botão 1:on(release) { var = "1";}Usando a lógica que apresentou dos ifs:if (var == "1") { gotoAndPlay(20);} else {if (var == "2") { gotoAndPlay(30);} else {...Mas neste caso acredito que seja melhor usar o case:switch (var) { case 1: gotoAndPlay(20); case 2: gotoAndPlay(30); ...}P.S.: estou começando agora a estudar AS, portanto, se alguém verificar um erro de sintaxe, por favor corrija!Espero que ajude.Um abraço. ;)/>

Compartilhar este post


Link para o post
Compartilhar em outros sites

teodorico, cuidado na hora de nomear variáveis com var, porque var é a sintaxe para se definir variáveis locais. tipo, var nome = "lucas".agora, acho que tem uma maneira mais elaborada pra fazer isso.natribo, faz exatamente o que eu to falando aqui.Cria 4 botões e instancie-os como botao1_mc para o primeiro, botao2_mc para o segundo e assm, sucessivamente (palavra bonita! :D/> ). Agora, pensa na sua timeline principal. Você vai ter no primeiro frames todos os botões e mais o movieClip que vai ser sua animação. O nome dela vai ser anima_mc ... Agora no painel de ações no primeiro frame, você coloca

for (i=1;i<=4;i++){	_root["botao"+i+"_mc"].onRelease = function(){  _global.clicado = this  anima_mc.play()  }	}	stop()
Isso quer dizer que para todos os botoes, ao serem clicados, definirão na variavel "clicado" o valor que é seu próprio nome. Note que você deu o play na animação.Agora, pense na timeline da sua anima_mc. No primeiro frame do movieClip bota a ação de stop(), que é pra nao roda-la logo de cara, e sim quando clicar em um dos botões. Agora no último frame da animação, você coloca a seguinte ação

stop()switch (clicado){ case _level0.botao1_mc: _root.gotoAndStop(20) break; case _level0.botao2_mc: _root.gotoAndStop(30) break; case _level0.botao3_mc: _root.gotoAndStop(40) break; case _level0.botao4_mc: _root.gotoAndStop(50) break; }

Quer dizer que verifica o valor da variavel clicado e vai para o frame determinado.Tenta fazer ai isso ai que nao tem erro. Mas se tiver da um toque que eu tenho arrumar pra você o exemplo que eu fiz.[]s

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.