domingo, 2 de setembro de 2007

Tutorial 7: Efeito Matrix

Saia da Matrix! E crie sua própria com as famosas letras verdes caindo no fundo preto.



Leia mais! * Montagem
Mude a cor do fundo para preto.
Crie um novo símbolo (Ctrl+F8) chamado "letra".
No símbolo, crie um campo de texto dinâmico.
Nas propriedades, mude o nome do texto para "texto".
Na biblioteca, clique com o botão direito sobre a letra.
Escolha "Linkage" e selecione "Export for ActionScript".

* Programação
Abra a janela de ActionScript (F9).
Na linha do tempo do símbolo, clique no keyframe 1:
texto.text = chr(65 + int(Math.random() * 64));
texto.textColor = (cor==8)?0xffffff:0x002200*cor;
contador = 0;

if (cor==0) removeMovieClip(this);
else onEnterFrame = function() {
_y += _height - 10;
contador++;
if (_y > Stage.height + 10)
removeMovieClip(this);
if (contador==1 && Math.random()*7 > 1)
_root.criar(_x,cor);
}
Volte para o documento (Ctrl+E).
Na linha do tempo do documento, clique no keyframe 1:
contador = 0;
onEnterFrame = function() { criar(-1,-1); }
criar = function(xx,cc) {
var nome = "letra"+contador++;
var mudaCor = Math.random() * 5;
attachMovie("letra", nome, this.getNextHighestDepth(), {_y:-10});
var obj = _root[nome];
if (xx > -1) {
obj._x = xx;
obj.cor = (mudaCor<1.5)?cc-1:(mudaCor>4)?cc+1:cc;
if (obj.cor<0) obj.cor=0;
if (obj.cor>7) obj.cor=7;
}
else {
obj._x = int(Math.random() * (Stage.width / obj._width)) * obj._width;
obj.cor = (mudaCor<1.5)?8:7;
}
}