LUIZ AVANCI (51 pts)

STICKMAN (155 pts)

ZECA BALA (45 pts)

JONAS GALVEZ (521 pts)

SYDNEY GANHO (60 pts)

AMAURY BENTES (123 pts)

ZEBEDIAH (35 pts)

HELEN TRIOLO (444 pts)

SÁVIO PONTE (39 pts)

RICARDO TAKAHASHI (180 pts)

DEN IVANOV (260 pts)

PANDOGO (82 pts)
Treinamento PontoFlash de Flash e ActionScript

Alguém aqui consegue produzir um multimídia com o flash, utilizando arquivos Quicktime (.MOV)?

Porque imagens TIFF têm melhor qualidade do que as imagens em .JPG (1).

Como redirecionar automaticamente para outra url?

Há uma forma de modificar a aprência de um compontente scrollbar ou scrollpane?

Como criar uma seqüência para a tecla TAB num formulário?

Como fazer para que meu flash aberto com Load Movie tenha fundo transparente.

Quero que quatro movie clips percorram o stage e parem um abaixo do outro.

Quer descobrir o nome de uma fonte?

Cara como se Zera(0) o getTime(); para reiniciar a contagem? Pode ser com o setInterval?

Alguém ai pode me dizer o que é esse tal de "prototype"?

Como eu faço um sorteio (random) e ir para o frame sorteado?

Quero um movieclip arrastado que ao se deparar com umas linhas, não consiga atravessar.

Como aumentar e diminuir um objeto usando o teclado? Dicas de Listeners (ouvintes)

Como eu faço para configurar uma pausa (delay)dinamicamente no filme?
Bolhas flutuantes.

Relógio analógico

Objeto Sound.

Formulário interagindo Flash e PHP.

RIA está vindo com tudo

Scroll - Rolagem de textos e Imagens

Primeiros passos - desenhando e animando

Code Animation - Parte 2

Macromedia Flex

Alterando Artistic Media no Corel Draw

Jogo de colorir.

Conceitos de Design - Apresentação.
Tocha de fogo

Puzzle

Statusload

3d FlashClub

Corrente

Bate e volta

Espelho

Drag tele

3d frame by frame

Texto girando

Bola quicando

Drag and run
HOME | TUTORIAIS
Color changer
por Helen Triolo

O que vai ser meninas? -- solteirão1, solteirão2, ou solteirão3? Vamos escolher um Mr. Green? Mas porque não podemos ter todos? A propriedade setRGB do objeto Color permite que você escolha dinamicamente uma cor qualquer para um movieclip e nio flash MX também para um botão.

Tente você mesmo (crie um objeto movieclip e escolha sua cor).

1) Desenhe um círculo no palco. Selecione o círculo e pressione F8, escolha movieclip.

2) Dê ao seu movieclip o nome de instância: mcCircle. Agora, mcCircle é o nome de seu objeto movieclip.

3) Adicione agora o código para colocar uma cor em seu movieclip. Selecione o frame 1 na timeline e abra o painel Frame Actions (Window, Actions or ctrl-alt-A). Cole isso na janela:

cCircle = new Color("mcCircle");
cCircle.setRGB(0x3399ff);
stop();

Acabamos de criar um novo objeto Color (cCircle) que determina a cor do movieclip mcCircle. Depois uma cor é especificada (azul claro = hex 3399ff) para esse objeto. A instrução stop não é essencial, mas não deixa a timeline ficar em loop desnecessariamente.

4) Teste o filme (Control, Test Movie). Você verá um círculo, mas agora com uma cor azul clara (note que todo o clip fica colorido, tanto linhas quanto preenchimento. Se a cor não mudou, volte ao painel Instance (ctrl-I), selecione o movieclip no palco e confira se ele realmente está com o nome de intância mcCircle. Confira também se o número de seu código está precedido por "0x" (sem aspas) para dizer ao flash que esse é um número hexadeciomal.

   A magem acima mostra como nós escolhemos a cor de Mr. Green criando um movieclip separado contendo apenas sua pele (nome de instância mcSkin). Um objeto Color foi criado para referenciar apenas esse movieclip, como será mostrado a seguir.

   Para conseguir mudar a cor de um movieclip continuadamente, como no exemplo acima, precisamos usar uma rotina de eventos para movieclip (onClipEvent). Em nosso exemplo, usamos dois eventos: onClipEvent(load), para declarar as condições iniciais, e onClipEvent(enterFrame), que é executado todo o tempo em que o frame no qual esse movieclip se encontra estiver ativo (em nosso caso, continuadamente, já que nosso filme tem apenas um frame com uma ação stop). Baixe aqui o exemplo.

O código:

Esse código deve ser colocado no objeto movieclip "mcSkin":

onClipEvent(load) {
   colorFace = new Color(this);
   var cnRedStart = 116;
   var cnGreenStart = 78;
   var cnBlueStart = 23;
   var cnRedRange = 126;
   var cnGreenRange = 111;
   var cnBlueRange = 89;
   var i = 0;
   var lDir = 0;
   _root.lPlaying = 1;
}

onClipEvent(enterFrame) {
   if (_root.lPlaying) {
      nRedSkin = cnRedStart+(i*.01)*cnRedRange;
      nGreenSkin = cnGreenStart+(i*.01)*cnGreenRange;
      nBlueSkin = cnBlueStart+(i*.01)*cnBlueRange;
      i = (lDir==0 ? i+1 : i-1);
      if (i > 99 || i < 1) {
         lDir = !lDir;
         i = (lDir==0 ? 0 : 99);
      }
      colorFace.setRGB(nRedSkin<<16 | nGreenSkin<<8 | nBlueSkin);
   }
}

Eis a explicação do código:

O código do onClipEvent(load):

colorFace = new Color(this);

Essa expressão cria um novo objeto color e o associa com o movieclip corrente (mcSkin). "this" sempre se refere ao movieclip no qual a rotina onClipEvent está associada.

var cnRedStart = 116;
var cnGreenStart = 78;
var cnBlueStart = 23;

Essa três linhas declaram 3 variáveis e indicam a quantidade de vermelho(R), verde(G) e azul(B) que irão definir a cor inicial do objeto. Os números usados são valores decimais RGB. Nós usamos "cn" na frente do nome da variável para designar que é uma constante (a variable whose value will not actually change during the movie, but which provides a convenient location to change this number, no matter how many times it is used in the code, should we ever want to change the starting skin color).

var cnRedRange = 126;
var cnGreenRange = 111;
var cnBlueRange = 89;

Essas variáveis também são constantes, como as três primeiras, mas essas definem a variação dos valores de vermelho, verde e azul entre a cor que queremos começar a animação e a cor na qual queremos terminar. Nós obtemos esses valores simplesmente escolhendo uma cor inicial e uma cor final e subtraindo os valores iniciais de RGB (individuamente) dos valores finais de RGB para conseguir a variação.

var i = 0;

Decidimos variar a cor do escuro para o claro em 100 frames. Para fazer isso, nós temos que setar a cor em cada frame to the start color plus 1/100th of the range for that color. Essa variável, i, mostra onde estamos nesses 100 frames.

var lDir = 0;

Decidimos também que seria bom que a cor volte do claro ao escuro nos próximos 100 frames. A variável lDir indica a direção da mudança de cor: 0 significa que estamos indo do escuro para o claro, 1 significa o oposto.

_root.lPlaying = 1;

Essa expressão declara uma variável que é usada no botão on/off (um movieclip com um botão dentro). Essa variável é declarada na timeline principal (_root) e indica que o filme está atualmente rodando (lPlaying = 1 = true).

O código do onClipEvent(enterFrame):

if (_root.lPlaying) {...}

Essa expressão checa se o usuário colocou o movieclip no modo off. A variável lPlaying foi declarada na timeline principal de modo a poder ser referenciada por tantos movieclips quanto forem necessários. Se o valor é 1 (true), o código enterFrame é executado. Note que não temos que explicitar dizendo que if (_root.lPlaying == true) ou if (_root.lPlaying == 1). Enquanto a condicional entre parênteses (_root.lPlaying) é avaliada como verdadeira (true), o código seguinte é executado.

nRedSkin = cnRedStart+(i*.01)*cnRedRange;
nGreenSkin = cnGreenStart+(i*.01)*cnGreenRange;
nBlueSkin = cnBlueStart+(i*.01)*cnBlueRange;

Essa linhas indicam valores RGB para o movieclip skin dependendo em qual dos 100 frames ele está agora gravado pela variável i).

i = (lDir==0 ? i+1 : i-1);
if (i > 99 || i < 1) {
lDir = !lDir;
i = (lDir==0 ? 0 : 99);
}

Esse código muda a direção de escuro-claro para claro-escuro quando eu chego no frame 100 ou no 0. Isso também zera o valor de i consequentemente.

colorFace.setRGB(nRedSkin<<16 | nGreenSkin<<8 | nBlueSkin);

Finalmente nós damos ao movieclip skin as cores especificadas nas três variáveis RGB. Isso é feito pelo desvio binário de cada um dos valores nos seus locais apropriados.

Tradução:
Alexandre Porto



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