Comunidad de diseño web y desarrollo en internet online

Manera optima de crear boton animado

Citar            
MensajeEscrito el 05 May 2009 11:15 am
Hola buenas pues eso, cual seria la manera mas optima, que consuma menos recursos para crear un boton animado que cuando te pongas encima avance y cuando salgas retroceda?
Yo utilizo el siguiente código:

Código :

onClipEvent(enterFrame){
   if (this.hitTest(_root._xmouse,_root._ymouse,true)==true){
      this.nextFrame();
   }else{
      this.prevFrame();
   }
}


Pero no se si tener un enterframe en cada movieclip que utilizo como boton será muy optimo...

Un saludo

Por n0ldor

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 May 2009 11:17 am
Bueno perdonese codigo sería para as2 pero bueno lo mismo pero adaptado a as3 :P

Por n0ldor

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 May 2009 01:24 am
en as2 el modo obtimo y sin bug para un boton es (AVANCE+RETROCESO)

as2
flex_btn.onRollOver = function(){
delete this.onEnterFrame;
this.play();
}
flex_btn.onRollOut = function(){
this.onEnterFrame = prevFrame;
this.stop();
}
en as2 esta es la mejor opcion para un boton aora si lo quieres en as3 es esta

flex_btn.addEventListener(MouseEvent.ROLL_OVER, sobre);
flex_btn.addEventListener(MouseEvent.ROLL_OUT, fuera);
function sobre(event:Event):void {
removeEventListener(Event.ENTER_FRAME, atras);
flex_btn.play();
}
function fuera(event:Event):void {
addEventListener(Event.ENTER_FRAME, atras);
}
function atras(event:Event):void {
flex_btn.prevFrame();
}

es mas compleja pero muy efectiva.

Por venecia

Claber

134 de clabLevel



 

2007

msie
Citar            
MensajeEscrito el 06 May 2009 03:29 pm
Y como te fue? Vale que digas si te fue bien o mal. XD

Por venecia

Claber

134 de clabLevel



 

2007

msie
Citar            
MensajeEscrito el 07 May 2009 08:52 am
Perdon es que estube varios dias sin programar jejeje, funcionar funciona bien lo unico que queria saber es si es la manera mas optima, pero por lo que veo tiene pinta de qu ees mas optima que la mia puesto que el enterframe solo está activo mientras estas over :P

Por n0ldor

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 May 2009 09:23 am
Estoy echandole un ojo al codigo otra vez y claro tambien tiene siempre activo un enterframe... entonces debe consumir los mismos recursos... :P

Por n0ldor

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 May 2009 09:49 am
ale creo que asi quedaria mas optimizado para as3:

Código :

bt_crear.addEventListener(MouseEvent.ROLL_OVER, sobre);
bt_crear.addEventListener(MouseEvent.ROLL_OUT, fuera);
         
function sobre(e:Event):void {
   removeEventListener(Event.ENTER_FRAME, atras);
   bt_crear.play();
}
      
function fuera(e:Event):void {
   addEventListener(Event.ENTER_FRAME, atras);
}
         
function atras(e:Event):void {
   bt_crear.prevFrame();

   if (bt_crear.currentFrame == 1) {
           removeEventListener(Event.ENTER_FRAME, atras);
        }
}

Por n0ldor

55 de clabLevel



 

firefox

 

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