Ir para conteúdo

POWERED BY:

Arquivado

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

bialost

[Resolvido]  com actions em botões

Recommended Posts

Oi! Sou nova aqui no fórum e tbm não mexo mto em Flash.Estou fazendo uma apresentação em Flash 8 e preciso de algumas dicas!Eu tenho um layout básico com fundo e alguns botões.A intenção é que ao clicar em um dos botões, apareça um texto na parte de cima do layout.Segundo minhas pesquisas, tenho que usar actions nos botões, certo?Consegui fazer isso na primeira cena (estou trabalhando com cenas pq achei que seria a forma mais fácil).usei esta action no frame 1 do layer "fundo":stop();function cena2(){gotoAndPlay("cena2", 1);}e no botão:on(press){_root.cena2();}Agora preciso clicar no segundo botão e fazer desaparecer esse primeiro texto e entrar outro...tô perdidaça aqui pq a medida que insiro as actions em outras cenas, meu primeiro botão pára de funcionar.Sei que é difícil entender o que estou tentando fazer só falando. Se alguém quiser/puder ver meu .fla, eu mando!Obrigada! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa criar mais funções, uma pra cada cena, por exemplo:

 

function cena2(){

gotoAndPlay("cena2", 1);

}

function cena3(){

gotoAndPlay("cena3", 1);

}

 

e assim por diante, da até pra fazer uma função só onde você passa um parametro que a cena, e dentro da função com um switch você manda pra cena que quiser, por exemplo:

 

function mudar_cena(valor){

switch (valor){

case 1 :

gotoAndPlay("cena1", 1);

break;

case 2 :

gotoAndPlay("cena2", 1);

break;

case 3 :

gotoAndPlay("cena3", 1);

break;

}

}

 

pra chamar a função você usa:

 

on(press){

_root.cmudar_cena(2);

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Carneirinho! Funcionou mesmo!Olha só...se eu clico no botão 1, abre o conteúdo da cena 2. Se eu clico no botão 2, abre o conteúdo da cena 3, mas se eu clico no botão 1 e depois quero clicar no botão 2, não funciona. Não muda de cena e não aparece o texto da cena 3. Por que isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aeeeeeeeeeeeeee! Consegui arrumar o .fla! Agora ele abre certinho!

 

Só falta eu descobrir uma coisa: qdo clico no botão 1, ele abre a cena2. Até aí, perfeito. Mas se na cena2 eu clico no botão 2, ele não vai pra cena3.

 

Alguém poderia me explicar o que devo fazer nesse caso? Sou super novata no Flash e mais ainda no actionscript.

 

Meu arquivo está em: http://www.4shared.com/dir/3278401/67a7fda0/sharing.html

 

Valeu galera!

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não vi seu arquivo, mas você terá que desabilitar o botão da cena quando você clicar nele, então terá que colocar uma instancia no botão que pode ser pro exemplo "bt_cena_2" sem aspas e quando clicar nele você adiciona a ação:

 

on(press){

bt_cena_1.enabled = true;

bt_cena_2.enabled = false;

bt_cena_3.enabled = true;

bt_cena_4.enabled = true;

_root.cmudar_cena(2);

}

 

Assim ele deixa todos habilitados, menos o que você acabou de clicar, outra sugestão até mais simples seria você armazenar qual é a sessão que está em uso numa variavel, dai você compara a sessão com o botão que clicou e se for diferente você deixa executar a ação, senão ele não faz nada, por exemplo:

 

on(press){

if(_root.cena != "cena2"){

_root.mudar_cena(2);

_root.cena = "cena2";

}

}

 

Deu pra entender?

 

abraço,

 

Carneirinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu estou tentando fazer a mesma coisa....até utilizei o exemplo do nosso amigo carneirinho....

 

Porém eu tenho várias cenas e em cada cena um menu. Quero q dentro do bt q ta num mc, na cena 2 ele chame a cena 3....

 

Estou usando o root p/ chamar a funcao q na ta timeline da cena 2 mais ele acaba chamando a funcao da cena 1..... como faz p/ chamar o root da cena2 ??

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.