GUILHERME SCHEIBE (49 pts)

STICKMAN (155 pts)

EDUARDO WALMOTT (226 pts)

ALEXANDRE PORTO (1281 pts)

ZEBEDIAH (35 pts)

GÉRIO (93 pts)

SÁVIO PONTE (39 pts)

ILVA RUDEV (90 pts)

SASHA GUDEY (235 pts)

LUIZ HERRERA (117 pts)

KEN AWAMURA (130 pts)

FÁBIO DUARTE (79 pts)
Treinamento PontoFlash de Flash e ActionScript

Com load movie into target, tem como carregar um SWF dentro de outro SWF?

Dica sobre o uso de cenas.

Como duplicar um movieclip em três posições diferentes determinadas?

O loadMovie() vai acumulando os filmes abertos na memória?

Como pegar os valores de vários registros de um banco de dados e grava-las num Array no Flash?

Um relógio digital mo formato HH:MM:SS

Como simular o "salvar imagem como" do botão direito do browser no Flash?

Gostaria que vocês me dessem uma dica, quando usar e quando não usar o loading.

Tem como eu controlar um movieclip de outro movieclip?

Como passar parâmetros para um arquivo swf por meio de uma página html?

Não consigo enviar uma instrução de um movieclip para uma outra cena.

Quero imprimir o conteúdo de um campo de texto e não somente a parte que está na tela.

Não conseguir determinar corretamente sua localização (hierarquia ou posição) de uma variável.

Quero dar 2 loops em um Wav e só depois seguir em frente com a timeline.
Como eliminar vozes de um arquivo Wav.

Botão avançar e recuar.

Funções SetInterval e clearInterval no FlashMX.

Loop Mixer.

MMSave

MP3 player

Desenho de letras - construindo fontes .TTF. no Corel Draw.

Componentes no Flash MX

Sistema de newsletter utilizando Flash + ASP.

Animação com TextFields Dinâmicos

Duplicate Movieclip.

Menu horizontal com descrição.
Emotion

Giro de duende

Abrir janelas

Drag hittest

Arrow

Cursor

Mouse delay

Natal arvores

Pond

F5menu popup

Tocha 2

Barneys menu
HOME | TUTORIAIS
CD Record (um player com clips arrastáveis).
por Alexandre Porto

Nesse artigo, vamos responder uma dúvida de um de nossos colegas da lista PontoFlash. Ele queria fazer um "player" com imagens de CDs sendo arrastadas para uma área, na qual o som seria disparado. Então, vamos lá.

   Eu criei um filme de 500X370pixels. Coloquei um MovieClip circular, que chamei de "vitrola", posicionado no centro e no alto do Palco. Foram criados 5 MovieClips CDs, todos com botões internos (cd1, cd2, cd3, cd4 e cd5). Para terminar, foi criado um MovieClip (clip) no qual serão colocadas algumas "actions" que serão usadas pelo sistema.

Disponibilizar os arquivos de som no filme.

De cara, vamos importar os arquivos de som. Pressionando Ctrl+R, você tem acesso à janela de importação. Escolha 5 loops. Importados, eles vão direto para a biblioteca. Você agora deve "linka-los" no filme. Para isso, abra a biblioteca e clique com o botão direito no nome do arquivo de som. Abrindo a janela "linkage", você digita "som1" no campo "Export this Symbol". Repita os passos para os outros arquivos na biblioteca, trocando para "som2" etc.

Agora vamos aos objetos do stage.

O movieclip "vitrola" é apenas um alvo no qual será implementada uma rotação dos CDs. Essa rotação será desencadeada por um "hitTest", como veremos adiante.

   O movieclip de controle (clip), pode ser invisível ou estar fora do palco, pois ele terá apenas actions. Vamos a elas, com comentários:

onClipEvent (load) {
// aqui, no carregamento do movieclip, eu estou chamando os objetos Sound
meuSom1 = new Sound();
meuSom1.attachSound("som1");
meuSom2 = new Sound();
meuSom2.attachSound("som2");
meuSom3 = new Sound();
meuSom3.attachSound("som3");
meuSom4 = new Sound();
meuSom4.attachSound("som4");
meuSom5 = new Sound();
meuSom5.attachSound("som5");
// essa variável é usada no swapDepths, que deixa
// os movieclips CDs sempre num nível superior ao outro

top = 1;
// essa função comanda os CDs, os enviando para a posição inicial
// o loop FOR, faz o comando ser realizado com todos os CDs
// ela será disparada no stopDrag dos CDs

function voltar () {
for (i=1; i<=5; i++) {
_root["cd"+i]._y = 300;
_root["cd"+i]._x = _root["a"+i];
}
// ainda na função, eu desligo todos os arquivos de som
stopAllSounds ();
// posiciono o CD escolhido na vitrola (variável"x")
_root["cd"+_root.x]._y = 80;
_root["cd"+_root.x]._x = 280;
// começo a tocar o som do CD escolhido
this["meuSom"+_root.x].start(0, 5);
}
}
onClipEvent (enterFrame) {
// aqui eu disparo a rotaç|ão do CD quando este estiver na vitrola
_root["cd"+_root.x]._rotation += 10;
}

   Algumas dessas "actions" na função dependem de variáveis declaradas nos botões dos CDs. Vamos a eles então:

on (press) {
startDrag ("");
this.swapDepths(_root.top);
_root.top++;
// aqui eu uso a variável "root.top" para manter sempre
// o CD escolhido em um nível superior

}
on (release) {
stopDrag ();
// se o CD arrastado for solto sobre a vitrola ...
if (this.hitTest(_root.vitrola)) {
// eu declaro uma variável que determina o CD escolhido
_root.x = 1;
// eu declaro uma variável que determina o posicionamento _x original dele
_root.a1 = 50;
// para terminar eu disparo a função presente no movieclip "clip"
// as variáveis declaradas acima ("x" e "a1") são usadas na função

_root.clip.voltar();
}
}

   Nos botões dos CDs, há duas linhas que devem ser modificadas de um para o outro. São os valores das variáveis, para que a função possa reconhecer o CD escolhido e arrastado. São elas:

_root.x = 1;
// esse valor deve ser trocado para 2, 3, 4 ou 5
_root.a1 = 50;
// no meu exemplo esse valor está sendo trocado para a2=150, a3=250, a4=350 e a5=450

   Resumindo, quando eu arrasto um CD e o solto na vitrola, desligo todos os sons e posiciono todos eles na posição original. Imediatamente após (você nem vai perceber), o CD escolhido vai para o local da vitrola, começa a girar e dispara o som.

   Quando eu solto outro CD, o processo se repete.

Espero ter ajudado



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
0 comentário