Comunidad de diseño web y desarrollo en internet online

Efecto Batido (Shake)

Citar            
MensajeEscrito el 20 Mar 2008 09:13 pm
Bueno, en la web encontré cómo hacerlo pero en AS 2.0, y como no es igual en AS 3.0 dado que la función duplicateMovieClip no existe, me tomé el trabajo de hacer el código para personas no dedicadas a la programación en actionscript.
Es decir, que no usaré clases como hizo zGuillez para crear el duplicateMovieClip con sus Tools.

En su escenario / movieclip o donde sea que lo quieran poner. Se tienen 2 frames: el primero, que contiene el objeto a aplicarle el efecto, y el 2do que borra el efecto y vuelve al primer frame para recrearlo.

AS Frame 1:

Código :

// función para duplicar el MC (algo así como duplicateMovieClip de AS 2.0)
function efecto(target:MovieClip):MovieClip {
   var targetClass:Class = Object(target).constructor;
   var targetCopy:MovieClip = new targetClass();
   targetCopy.width = target.width;
   targetCopy.height = target.height;
   return targetCopy;
}
// Esta función hará que el MC duplicado vaya para arriba, abajo, izq, o der, aleatoriamente
function aleatorio():Number {
   if(Math.floor(Math.random()*2) == 0){
      return -1;
   }else{
      return 1
   }
}

// creamos el MC que será el efecto
var copiado:MovieClip = efecto(mi_mc);
// creamos 2 randoms entre -1 y 1, uno para X y otro para Y
var neg:Number = aleatorio();
var neg2:Number = aleatorio();
// movemos el MC efecto "copiado"
copiado.x = Math.random()*4*neg;
copiado.y = Math.random()*4*neg2;
copiado.alpha = Math.random();
copiado.rotation = Math.random()*5;

// lo añadimos al escenario
this.addChild(copiado);

Obviamente en el Frame 1, y por comodidad en otro layer, va el clip con identificador "mi_mc".

AS Frame 2:

Código :

// removemos del escenario
this.removeChild(copiado);
// creamos de nuevo
gotoAndPlay(1);


NOTA: Exportar para ActionScript en el Linkage!! sino no funcionará.

El resultado ?



Descargar .FLA

Por tomasdev

220 de clabLevel

1 tutorial

 

Argentina por ahora...

firefox
Citar            
MensajeEscrito el 21 Mar 2008 09:45 pm
todo ese codigo para eso XD, es mas facil hacerlo por flash y no por action XD, igual para otras aplicaciones puede servir demaciado, muy bueno el apoyo!

Por wawi

325 de clabLevel

2 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 21 Mar 2008 09:46 pm
la idea es aprender AS y además, que sea completamente aleatorio. Por diseño se volvería repetitivo.

Por tomasdev

220 de clabLevel

1 tutorial

 

Argentina por ahora...

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.