• Olá Visitante, se gosta do forum e pretende contribuir com um donativo para auxiliar nos encargos financeiros inerentes ao alojamento desta plataforma, pode encontrar mais informações sobre os várias formas disponíveis para o fazer no seguinte tópico: leia mais... O seu contributo é importante! Obrigado.

[Tutorial] Loops Alternados (Objeto Sound).

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
Você pode reparar, nesse exemplo que os sons tocam juntos ou separados. Eu ainda coloquei dois campos de texto para demostrar isso. Vamos ver os passos.

Importando o som.

A primeira coisa a ser feita é importar os sons. "File / Import". Depois de importados eles vão direto para a biblioteca. Abrindo a mesma (Ctrl + L), você vai encontrar os dois arquivos listados. Clique com o botão direito do mouse no nome do primeiro som e escolha "linkage". No campo "Export this Symbol" da janela "Symbol Linkage Property", digite um identificador (ID) para ele. Nesse exemlo escolhemos "som1" e "som2", para o outro arquivo.

Repita os passos para o outro arquivo também.

loops_alternados1.gif


Pronto, seus loops estão linkados com o filme. Se você gerar seu SWF agora, não ouvirá nada, mas já perceberá que ele já está bem maior em kbs. :)
 

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
Agora vamos disponibilizar os arquivos para tocar.

Vamos ao primeiro frame de seu filme e vamos inserir uma "frameAction".

Código:
loopUm = new Sound();
loopUm.attachSound("som1");
loopUmVar = true;
loopDois = new Sound();
loopDois.attachSound("som2");
loopDoisVar = true;

Vamos entender esses códigos analizando os três primeiros, já que os outros três são repetidos para o segundo som.

loopUm = new Sound();
//aqui estou criando um novo objeto "Sound".
loopUm.attachSound("som1");
//estou anexando um som específico ao filme.
loopUmVar = true;
//aqui estou declarando uma variável que vai ser usado pelo botão desse som
 

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
E o que vai nos botões afinal?

Antes de falar nos botões, eu coloquei dois campos de texto apenas para mostrar um texto confirmando se o som está tocando ou não. "loopUMText" e "loopDoisText".

De volta aos botões, primeiro é preciso construir os mesmos. Copie duas instância para o palco e coloque:

Código:
on (release) {
if (loopUmVar) {
loopUm.start( 0, 10 );
loopUmVar = false;
loopUmText = "o som1 está tocando";
} else {
loopUm.stop( "som1");
loopUmVar = true;
loopUmText = "o som1 está parado";
}
}
 

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
Vamos ver:
on (release) {
O evento "on (Release)".

if (loopUmVar) {
Eu checo se a variavel "loopUmVar" está "true" ou "false". Essa condicional foi criada para mudar a ação do botão.

loopUm.start( 0, 10 );
Se for "true", dou um "start" no som do inicio (0) e peço a ele que faça dez loops (10).

loopUmVar = false;
Mudo o valor da variável, para que o botão não inicie mais o som, pois ele já está tocando.

loopUmText = "o som1 está tocando";
Mando esse valor para o campo de texto.

} else {
Aqui eu começo a dar outros comandos caso "loopUmVar" esteja "false".

loopUm.stop( "som1");
Parar o som, por exemplo. Aqui é necessário você digirar o identificador escolhido anteriormente. Caso contrário, todos os sons irão parar.

loopUmVar = true;
Retorno a variável para o valor no qual o botão volta a tocar o som.

loopUmText = "o som1 está parado";
Modifico o texto do campo.
 
Topo