Comunidad de diseño web y desarrollo en internet online

Problema al crear una clase

Citar            
MensajeEscrito el 13 Mar 2011 05:56 pm
Buen día
Estoy haciendo mi paso accidentado a AS3, puntualmente necesito hacer unas transiciones con la clase tween, pero no logro que funcione desde un paquete, será que lo estoy declarando mal?, me falta importar alguna clase?, necesito de su ayuda por favor
fades.as

Código ActionScript :

package clases{
      import flash.display.MovieClip;   
      import fl.transitions.Tween;
      import fl.transitions.easing.*;   
   
   public class fades {
      public function fades():void {
         }
      
      
      function gira (obj, ini, fin, dur){
         var rotator:Tween = new Tween(obj,"rotation",null, ini, fin, dur, true)
   
         rotator.addEventListener(TweenEvent.MOTION_FINISH, rota);   
      
         function rota (event:Event){
            rotator.yoyo();
            }
      }
   }
}


en el .fla he puesto lo siguiente:

Código ActionScript :

import clases.fades; 
fades.gira (intro_mc.m4_mc, 0, 360, 10);

Por mareol

15 de clabLevel



Genero:Masculino  

diseñador gráfico

chrome
Citar            
MensajeEscrito el 13 Mar 2011 08:06 pm
BuenAS:

Me da la sensación de que buscabas una clase estática (si no es el caso suprime static y crea una instancia de la clase para utilizarla). Prueba con esta:

Código ActionScript :

package clases
{
   import fl.transitions.Tween;
   import fl.transitions.TweenEvent;
   
   import flash.display.DisplayObject;
   import flash.events.Event;

   public class Fade
   {
      public function Fade()
      {
         trace("Esta clase es estática y no debería ser instanciada");
      }
      
      public static function gira (obj:DisplayObject, ini:Number, fin:Number, dur:Number):void
      { 
         var rotator:Tween = new Tween(obj,"rotation",null, ini, fin, dur, true) 
         
         rotator.addEventListener(TweenEvent.MOTION_FINISH, rota);    
      }
      
      private static function rota (event:Event):void
      { 
         Tween(event.target).yoyo(); 
      }
   }
}


Y en tu fla escribe:

Código ActionScript :

Fade.gira(intro_mc.m4_mc, 0, 360, 10);


Las clases se suelen llamar, por convención, en Mayúsculas, por lo que he cambiado "fade" por "Fade"

Un saludo.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 07 Abr 2011 03:43 am
excelente!!! funciona a la perfección, mil y mil gracias, estoy empezando con as3 y me ha dado un poco duro, hasta el punto que estaba optando por poner el código en la línea de tiempo, pero quiero hacerlo bien y seguiré probando con las clases.

de nuevo mil gracias.

Por mareol

15 de clabLevel



Genero:Masculino  

diseñador gráfico

chrome

 

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