Comunidad de diseño web y desarrollo en internet online

Congelamiento de clips animados con Tween

Citar            
MensajeEscrito el 05 Feb 2008 08:53 pm
Hola, estoy haciendo este código y necesito una ayuda al momento de borrar los objetos. Exactamente no sé cuál es el problema, pero luego de que varios clips hacen el Tween en x, llega un momento en que se congelan, aunque el Tween alpha sigue funcionando. Luego vuelve a correr pero de ahí en más va todo de mal en peor: se comienza a congelar en intervalos cada vez más cortos hasta que todo avanza a pequeños saltitos. Serán muchos clips creados? será un problema con Tween.
Este es el código en el frame 1 del .fla

Código :

import flash.utils.Timer;
import flash.events.TimerEvent;

var tiempo:Timer = new Timer(100);
var inc:Number = 0;
tiempo.addEventListener(TimerEvent.TIMER, agregar);
tiempo.start();

function agregar(e:TimerEvent)
{
   var circulo:Circulo = new Circulo();
   circulo.nombrar("circulo"+inc++);
   addChild(circulo);
   circulo.cronometrar();
}


y esta la clase del movieclip en la librería:

Código :

package
{
    import flash.display.MovieClip;
   import fl.transitions.Tween;
   import fl.transitions.TweenEvent;
   import fl.transitions.easing.*;
   import flash.text.TextField;
   import flash.text.TextFormat;
   import flash.text.TextFieldAutoSize;
   import flash.utils.Timer;
   import flash.events.TimerEvent;
   import flash.geom.ColorTransform;
   import flash.events.MouseEvent;
   
   public class Circulo extends MovieClip
   {
      var nombrel:String = new String();
      var texto:TextField = new TextField();
      var formato:TextFormat = new TextFormat();
      var indice:int = 0;
      var letras:Array = new Array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');

      public function Circulo()
      {
         texto.embedFonts = true;
         formato.color = 0x000000;
         formato.size = 10 + Math.random()*32;
         formato.font = "fertigo";
         indice = Math.random()*40;
         texto.text = letras[indice];
         texto.setTextFormat(formato);
         texto.autoSize = TextFieldAutoSize.LEFT;
         addChild(texto);

         this.y = 230*Math.random();
         this.alpha = Math.random()/2;
         var tx:Tween = new Tween(this, "x", Regular.easeOut, 0, 700*Math.random(), 1, true);
      }
      public function nombrar(nombrex:String)
      {
         nombrel = nombrex;
         this.name = nombrel;
         trace(this.name);
      }
      public function cronometrar()
      {
         var tiempo:Timer = new Timer(2000);
         tiempo.addEventListener(TimerEvent.TIMER, desvanecer);
         tiempo.addEventListener(TimerEvent.TIMER, quitar);
         tiempo.start();
      }
      public function desvanecer(te:TimerEvent)
      {
         var ta:Tween = new Tween(this, "alpha", Regular.easeOut, this.alpha, 0, 3, true);
         ta.addEventListener(TweenEvent.MOTION_FINISH, quitar);
      }
      public function quitar(te:TimerEvent)
      {
         trace("chau " + nombrel);
         this.texto = null;
         delete parent[nombrel];
         trace(parent[nombrel].name);
      }
   }   
}


Una última pregunta: cuando se extiende de MovieClip no se pueden pasar parámetros al constructor?? he intentado hacerlo pero no funcionó. Muchas gracias desde ya.

Por Skatos

393 de clabLevel

4 tutoriales

 

firefox
Citar            
MensajeEscrito el 06 Feb 2008 08:40 am
Te recomiendo que utilices para esos efectos la clase Tweener mucho más sencilla, con muchas opciones y así no te complicas la vida, le puedes dar todos los parámetros que quieras, tiempo de ejecución, delay, etc.. una maravilla.
La puedes encontrar en http://code.google.com/p/tweener/

Espero que te sea de ayuda.
:wink:

Por Whitefeet

42 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 06 Feb 2008 11:37 am
Gracias Whitefeet, pero que hay acerca de mi inconveniente? conozco a Caurina hace tiempo pero nunca la usé porque la clase Tween hacía todo lo que necesitaba. No tenés idea de qué puede ser que les suceda a los clips?

Por Skatos

393 de clabLevel

4 tutoriales

 

firefox
Citar            
MensajeEscrito el 06 Feb 2008 12:41 pm
La verdad es que no sé responderte, porque desde que empecé a programar, utilicé el Tween y empezó a darme los mismos problemas que a tí, supongo que por la ejecución de múltiples transiciones a la vez... me pasé al mc_Tween y al Tweener posteriormente.

Siento no poder decirte más, un saludo.

Por Whitefeet

42 de clabLevel



Genero:Masculino  

firefox

 

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