Jump to content


Photo

Efeito Neve


  • Faça o login para participar
22 replies to this topic

#16 Saruman

Saruman

    Veterano

  • Usuários
  • 1112 posts
  • Sexo:Masculino
  • Localidade:São Paulo, SP

Posted 14/07/2005, 12:49

Xo v aki... tem algums partes do codigo alterado que estão com uma sintaxe meio incorreta... tenta assim oh... tá bem parecido com o que já passei, mas com alguns ajustes...:
i=0;
_root.onEnterFrame = function() {
        i++;
        neve.duplicateMovieClip("neve"+i, i);
        with (this["neve"+i]) {
                _x = random(500);
                _y = 0;
                _alpha = random(90);
        }
        for(a=1;a<=i;a++){
                if(_root['xneve'+a]==undefined || _root['xneve'+a]==this["neve"+a]._x){
                        _root['xneve'+a]=(random(100)-50)+this["neve"+a]._x;
                }
                with(this["neve"+a]){
                        _y+=10;
                        if(_y>60) this["neve"+a].unloadMovie();
                        if(_root['xneve'+a]>_x) _x+=1;
                        else if(_root['xneve'+a]<_x) _x-=1;
                }
        }
};
Soh basta alterar o nome da instancia...

Edição feita por: Saruman, 14/07/2005, 12:50.

import Profile;

var saruman:Profile = new Profile();

saruman.nome = new String("Tiago S. Kaneta");

saruman.localizacao = new Array("São Paulo","SP");

#17 xuki

xuki

    12 Horas

  • Usuários
  • 261 posts
  • Sexo:Não informado

Posted 14/07/2005, 13:10

Só pra min enteder melhor e não tem duvidas nas próximas...
pq essi xneve ?

no meu caso a "neve" bolha vai subindo sem parar, mas isso de subir não tem problema, eu ajusto
só quero entendr o xneve
hehe
abraço e obrigado
P(eace) L(ove) U(nity) R(espect)

#18 xuki

xuki

    12 Horas

  • Usuários
  • 261 posts
  • Sexo:Não informado

Posted 14/07/2005, 13:11

aaa e quanto ao removeMovieClip(""); não seria uma solução?
P(eace) L(ove) U(nity) R(espect)

#19 Saruman

Saruman

    Veterano

  • Usuários
  • 1112 posts
  • Sexo:Masculino
  • Localidade:São Paulo, SP

Posted 14/07/2005, 15:57

Ao xneve é só para controlar o movimento no eixo X (horizontalmente)... se prestar atenção verá que eu crio uma variavel xneve para cada "neve" no palco que irá armazenar a posição no eixo X que a neve deve se movimentar...

Se vc naum precisar disso basta pegar o código que coloquei antes desse...

E quanto ao removeMovieClip(), tanto faz, o uso dos dois é quase o mesmo...
import Profile;

var saruman:Profile = new Profile();

saruman.nome = new String("Tiago S. Kaneta");

saruman.localizacao = new Array("São Paulo","SP");

#20 marangelus

marangelus

    Turista

  • Usuários
  • 56 posts
  • Sexo:Não informado
  • Localidade:São Paulo - SP

Posted 10/06/2006, 03:07

Eaê...
Já faz tanto tempo que nem sei se vai adiantar postar aqui, mas...

Bom... se eu quiser o mesmo efeito só que indo horizontalmente na tela, da esqueda pra direita ou/e da direita pra esquerda. Como faço?
Queria tb usar mais de um MC no efeito, mas que fosse aleatório tb... tipo em um MC eu vou colocar um texto X e em outro um texto Y. Se der com mais MCs melhor ainda.

Tem jeito???

Um abração...

Eaê...
Já faz tanto tempo que nem sei se vai adiantar postar aqui, mas...

Bom... se eu quiser o mesmo efeito só que indo horizontalmente na tela, da esqueda pra direita ou/e da direita pra esquerda. Como faço?
Queria tb usar mais de um MC no efeito, mas que fosse aleatório tb... tipo em um MC eu vou colocar um texto X e em outro um texto Y. Se der com mais MCs melhor ainda.

Tem jeito???

Um abração...



Aê... deu um trabalhinho mas pelo menos uma parte funcionou... Consegui fazer o efeito ir da direita pra esquerda, da esquerda pra direita e vou aproveitar pra postar todos os scripts comentados aqui pra quem precisar.

DA ESQUERDA PRA DIREITA
//Efeito randômico da DIREITA para ESQUERDA
//Instruções: Criar um MC e posicioná-lo no fora do palco. Instanciar como efeitorandom.
//Inserir este script no 1º frame da TimeLine.
i=0;
_root.onEnterFrame = function() {
		i++;
		efeitorandom.duplicateMovieClip("efeitorandom"+i, i);
		with (this["efeitorandom"+i]) {
			//Posição horizontal ocupado pelo feito no palco
				_x = 700;
			//Posição vertical de onde começa o efeito no palco
				_y = random(370);
			//Efeito alpha pra algumas aparecerem mais fracas e outras mais fortes
				_alpha = random(80);
		}
		for(a=1;a<=i;a++){
				if(_root['yefeitorandom'+a]==undefined || _root['yefeitorandom'+a]==this["efeitorandom"+a]._y){
			//Aqui se trata a direção inicial e final do moviemento, ou seja se alterar 
			//por exemplo para (random(10)-90) o efeito irá subir da esquedo para direita.
			//Em (random(100)-50) o efeito fica reto
						_root['yefeitorandom'+a]=(random(100)-50)+this["efeitorandom"+a]._y;
				}
				with(this["efeitorandom"+a]){
					//Velocidade do efeito
						_x-=10;
					//Tamanho vertical do efeito
						if(_x<-10) this["efeitorandom"+a].unloadMovie();
						if(_root['yefeitorandom'+a]>_y) _y+=1;
						else if(_root['yefeitorandom'+a]<_y) _y-=1;
				}
		}
};

DA DIREITA PRA ESQUERDA
//Efeito randômico da DIREITA para ESQUERDA
//Instruções: Criar um MC e posicioná-lo no fora do palco. Instanciar como efeitorandom.
//Inserir este script no 1º frame da TimeLine.
i=0;
_root.onEnterFrame = function() {
		i++;
		efeitorandom.duplicateMovieClip("efeitorandom"+i, i);
		with (this["efeitorandom"+i]) {
			//Posição horizontal ocupado pelo feito no palco
				_x = 700;
			//Posição vertical de onde começa o efeito no palco
				_y = random(370);
			//Efeito alpha pra algumas aparecerem mais fracas e outras mais fortes
				_alpha = random(80);
		}
		for(a=1;a<=i;a++){
				if(_root['yefeitorandom'+a]==undefined || _root['yefeitorandom'+a]==this["efeitorandom"+a]._y){
			//Aqui se trata a direção inicial e final do moviemento, ou seja se alterar 
			//por exemplo para (random(10)-90) o efeito irá subir da esquedo para direita.
			//Em (random(100)-50) o efeito fica reto
						_root['yefeitorandom'+a]=(random(100)-50)+this["efeitorandom"+a]._y;
				}
				with(this["efeitorandom"+a]){
					//Velocidade do efeito
						_x-=10;
					//Tamanho vertical do efeito
						if(_x<-10) this["efeitorandom"+a].unloadMovie();
						if(_root['yefeitorandom'+a]>_y) _y+=1;
						else if(_root['yefeitorandom'+a]<_y) _y-=1;
				}
		}
};

DE CIMA PRA BAIXO
//Efeito randômico da CIMA para BAIXO
//Instruções: Criar um MC e posicioná-lo no fora do palco. Instanciar como efeitorandom.
//Inserir este script no 1º frame da TimeLine.
i=0;
_root.onEnterFrame = function() {
		i++;
		efeitorandom.duplicateMovieClip("efeitorandom"+i, i);
		with (this["efeitorandom"+i]) {
				_x = random(700);
				_y = -10;
				_alpha = random(90);
		}
		for(a=1;a<=i;a++){
				if(_root['xefeitorandom'+a]==undefined || _root['xefeitorandom'+a]==this["efeitorandom"+a]._x){
						_root['xefeitorandom'+a]=(random(100)-50)+this["efeitorandom"+a]._x;
				}
				with(this["efeitorandom"+a]){
						_y+=10;
						if(_y>420) this["efeitorandom"+a].unloadMovie();
						if(_root['xefeitorandom'+a]>_x) _x+=1;
						else if(_root['xefeitorandom'+a]<_x) _x-=1;
				}
		}
};

DE BAIXO PRA CIMA
//Efeito randômico da BAIXO para CIMA
//Instruções: Criar um MC e posicioná-lo no fora do palco. Instanciar como efeitorandom.
//Inserir este script no 1º frame da TimeLine.
i=0;
_root.onEnterFrame = function() {
		i++;
		efeitorandom.duplicateMovieClip("efeitorandom"+i, i);
		with (this["efeitorandom"+i]) {
			//Posição horizontal ocupado pelo feito no palco
				_x = random(700);
			//Posição vertical de onde começa o efeito no palco
				_y = 370;
			//Efeito alpha pra algumas aparecerem mais fracas e outras mais fortes
				_alpha = random(80);
		}
		for(a=1;a<=i;a++){
				if(_root['xefeitorandom'+a]==undefined || _root['xefeitorandom'+a]==this["efeitorandom"+a]._x){
			//Aqui se trata a direção inicial e final do moviemento, ou seja se alterar 
			//por exemplo para (random(10)-90) o efeito irá subir da esquedo para direita.
			//Em (random(100)-50) o efeito fica reto
						_root['xefeitorandom'+a]=(random(100)-50)+this["efeitorandom"+a]._x;
				}
				with(this["efeitorandom"+a]){
					//Velocidade do efeito
						_y-=10;
					//Tamanho vertical do efeito
						if(_y<-10) this["efeitorandom"+a].unloadMovie();
						if(_root['xefeitorandom'+a]>_x) _x+=1;
						else if(_root['yefeitorandom'+a]<_x) _x-=1;
				}
		}
};

Aqui está o zip do arquivo fla.

Attached Files


SOU o que SOU

#21 ju.ramones

ju.ramones

    Turista

  • Usuários
  • 39 posts
  • Sexo:Feminino
  • Localidade:Curitiba - PR

Posted 18/12/2006, 10:34

Oii.. então... fiz a animação e deu tudo certo :D

o problema é que eu não acho o lugar q altera quantos flocos de neve vão cair... eu acho q ta muito e eu queria diminuir... tem como???


obrigada desde já! :P

#22 Dukontra

Dukontra
  • Visitantes

Posted 20/12/2006, 22:54

Vlw..tava precisando tb...

#23 Pedropauloalmeida

Pedropauloalmeida

    Fale ao motorista somente o indispensável

  • Usuários
  • 1376 posts
  • Sexo:Masculino
  • Localidade:Santo André SP

Posted 21/12/2006, 08:04

No caso dos textos aleatórios seria o seguinte:

No clip "neve_mc" vc teria que criar, dentro dele, uma caixa de texto dinâmica com instância, por exemplo, de "rotulo_txt".

Daí vc precisa fazer uma array com os textos. Depois fazer um random dos índices da array pra inserir o rótulo em cada clip.

Ficaria mais ou menos assim:

//Efeito randômico da DIREITA para ESQUERDA
//Instruções: Criar um MC e posicioná-lo no fora do palco. Instanciar como efeitorandom.
// Criar dentro desse movie clip uma caixa de texto dinâmica com instância rotulo_txt
//Inserir este script no 1º frame da TimeLine.

// Array de frases...
var frases:Array = new Array("Olá", "Bem-vindo", "Bom-dia", "Parabéns");

i=0;
_root.onEnterFrame = function() {
[indent=1]i++;
efeitorandom.duplicateMovieClip("efeitorandom"+i, i);
with (this["efeitorandom"+i]) {
//Posição horizontal ocupado pelo feito no palco
x = 700;
//Posição vertical de onde começa o efeito no palco
_y = random(370);
//Efeito alpha pra algumas aparecerem mais fracas e outras mais fortes
_alpha = random(80);
//Inserindo um rótulo aleatório no clip:
var indice:Number = random(frases.length-1);
this.rotulo_txt.text = frases[indice];

}
for(a=1;a<=i;a++){
if(_root['yefeitorandom'+a]==undefined || _root['yefeitorandom'+a]==this["efeitorandom"+a]._y){
//Aqui se trata a direção inicial e final do moviemento, ou seja se alterar
//por exemplo para (random(10)-90) o efeito irá subir da esquedo para direita.
//Em (random(100)-50) o efeito fica reto
_root['yefeitorandom'+a]=(random(100)-50)+this["efeitorandom"+a]._y;
}
with(this["efeitorandom"+a]){
//Velocidade do efeito
_x-=10;
//Tamanho vertical do efeito
if(_x<-10) this["efeitorandom"+a].unloadMovie();
if(_root['yefeitorandom'+a]>_y) _y+=1;
else if(_root['yefeitorandom'+a]<_y) _y-=1;
}
}
};







1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq