segunda-feira, 17 de novembro de 2008

Inserindo som a um botão - Flash CS3

Neste tutorial vou ensinar a vocês como inserir um som a um botão, e muito difícil você acessar um site feito em flash que não tenha algum tipo de som, para isso vamos utilizar o ActionScript 3.0, esta versão que e de fato o padrão para profissionais que trabalham com flash. Bom então vamos começar!

1º Passo: Abra o Flash (neste tutorial estou usando o Flash CS3), crie um novo documento em ActionScript 3.0, logo em seguida vá na palheta “Properties” e modifique os seguintes campos: “Background” selecione a cor preta, “Frame Rate” coloque em 24fps, agora salve o documento com o nome sound.





OBS: E muito importante criar uma nova pasta para guardar o nosso arquivo, os mp3 serão guardados no mesmo lugar.

2º Passo: Bem agora vamos configurar as camadas, neste caso vamos trabalhar com 3 camadas, e muito importante organizar as camadas para que não se atrapalhe futuramente e comprometa seu trabalho, bom vamos nomear a primeira camada, dê 2 cliques na camada Layer 1 e escreva “actions”, e clique na opção Lock(Cadeado), crie mais 2 novas camadas, para fazer isso vá ao menu “Insert/TimeLine/Layer” ou clique no ícone “Insert Layer”, e logo em seguida as nomeie “Button” e “textfield”.



3º Passo: Vamos adicionar um botão, neste caso vamos utilizar as opções de botões da própria biblioteca do Flash, vá em “Window/Common Libraries/Buttons”, escolha a opção “Classic buttons”, e em seguida clique em “Arcade Buttons”, selecione o botão que lhe agradar, neste caso usarei o botão verde, feito isso clique no primeiro frame da camada “Button”, clique e arraste o botão para o cenário.







4º Passo: Apartir de agora iremos trabalhar com a linguagem ActionScript 3.0, clique no primeiro frame da camada “actions”, aperte a tecla F9 para abrir o painel actions(ações), a primeira coisa que vamos fazer e configurar o eventual clique do botão, vamos adicionar o código mostrado abaixo, este código diz que todas vez que o botão é clicado ele deve chamar a função playSound, na primeira linha digite:



1 - Button.addEventListener(MouseEvent.CLICK, playSound);
2 -

5º Passo: Agora vamos terminar de criar a função playSound, na 3 linha do painel de ações digite o código mostrado abaixo, o codigo da 5 linha é um string de saída da função trace e é comumente utilizado para fins de depuração, logo em seguida teste seu filme, para testar seu filme vá ao menu “File/Publish Preview/Flash” ou aperte as teclas “Ctrl+enter”, abrirá uma nova janela clique no botão, se aparecer outra janela com o texto”Foi Clicado” significa que ta tudo certo ate agora, leia tudo de novo e veja onde esta o erro.



3 - function playSound(e:Event)
4 - {
5 - trace (“Foi Clicado”)
6 - }

6º Passo: Agora vamos inserir um som , depois de testarmos e termos certeza de que deu certo, vamos inserir o som, mais antes de tudo selecione o mp3 que quer usar, e leve o arquivo de som para pasta onde esta sendo salvo o arquivo do flash, modifique a linha 5 e coloque esses novos códigos que esta sendo mostrado abaixo, esse arquivo “arte.mp3” e um arquivo escolhido por mim para este tutorial, neste código mostrado estamos criando um objeto de som com o nome de “s”, à direita do sinal igual, você esta iniciando o objeto através de uma nova URLRequest, quando for inicializado ele vai chamar o arquivo de som “arte.mp3”.



5 - var s:Sound = new Sound(new URLRequest (“arte.mp3”));

7º Passo: No passo anterior criamos um objeto de som e indicamos para o local onde esta a mp3, agora vamos inserir na linha 6 o código mostrado abaixo, esse código faz o mp3 tocar, quando você clicar no botão a musica ira tocar, depois teste o filme.



6 – s.play();

8º Passo: Ate agora aprendemos o básico para tocar sons externos para um filme flash, mais existem muitas outras opções quando se trata de tocar arquivos sonoros, por exemplo, quando você testar o seu filme aperte varias vezes o botão e repare que fica tocando varias musicas ao mesmo tempo, para ajustar esse mal indesejado insira o seguinte código na 5 linha, mais não apague o codigo anterior, feito isso teste o arquivo, se de tudo certo quando clicares no botão o som irá tocar, para testar seu filme vá ao menu “File/Publish Preview/Flash” ou aperte as teclas “Ctrl+enter”.



5 – SoundMixer.StopAll();

Ate agora nossos códigos estão assim:

1 - Button.addEventListener(MouseEvent.CLICK, playSound);
2 -
3 - function playSound(e:Event)
4 - {
5 - SoundMixer.StopAll();
6 - var s:Sound = new Sound(new URLRequest (“arte.mp3”));
7 - s.play();
8 - }

Bem chegamos ao final de mais um tutorial, espero ter lhe ajudado, qualquer duvida post um comentário. Obrigado!!!

8 comentários:

Unknown disse...

Muitoo Bom!!!
Agora que ja terminei meu curso de corel,photoshop,indesign e etc.. sempre q tenho alguma dúvida, passo por aqui :)
SUCESSO!!!!
Beijos,
KARINA TAVARES.

natan disse...

very nice idea , thanks for sharing bro ,much appreciated

Luiz Augusto Correia de Araujo disse...

Valeu a dica, mas pelo menos comigo foram necessárias algumas alterações no código:
1) O botão precisou ser instanciado (ex: botao). O código que funcionou na linha 1 foi:
botao.addEventListener(MouseEvent.CLICK, playSound);
2)Foi necessário usar aspas simples (") no lugar das aspas do seu exemplo e faltou o ponto vírgula no final da linha 5 no primeiro teste:
trace ("Foi Clicado");
3) A funçao para parar os sons na linha 5 do exemplo final que funcionou foi:
SoundMixer.stopAll(); com s minúsculo

Anônimo disse...

Seu exemplo foi de muita valia para meu trabalho.
Mas como fazer um botão que no carga da página venha tocando e aí caso a pessoa queira desligar o som clica no botão novamente. (tipo on/off).
Grato

Anônimo disse...

poxa nao deu certo no actions em que escrevemos function playSound(e:Event)... ja aparece erros pq eu ja converi mas de mil vezes e ainda continua dando erro..

Unknown disse...

deu um erro aki tbm na 1° linha
access of undefined propety Buton.

Flash cs3 professional

Unknown disse...

Valeu Amigão, se puder postar a sequencia com um botão Stop neste mesmo exemplo, ficarei agradecido, mas este post ficou otimo aprendi uma otima técnica.to iniciando...
abçs

Anônimo disse...

Kids are under more pressure than ever to succeed in
school. People who tend to overpack their personal effects are always
caught up in this dilemma. Adult comfort - It is all well and good to have
your baby comfortable, but if your back carrier is not comfortable then you will not be going far (or you will only be doing it once.


my webpage - backpacks for college