Comunidad de diseño web y desarrollo en internet online

muchachos como transformo este codigo as2 en as3?

Citar            
MensajeEscrito el 26 Ene 2010 06:49 pm
una ayudita please!! con este codigo solia darle acciones a varios mc situados en el escenario, q tuviesen la mism nomenclatura en sus nombres sin tener q repetir lineas y lineas de codigo para cada uno

Código ActionScript :

for(var i=1; i<8; i++){
   this["btn"+i].nr = i
   this["btn"+i].onPress = function(){
      contenedor.loadMovie("estados/"+this.nr+".swf",16)
   }
}

en este caso era para q los 7 mc fuesen botones; pero lo que requiero ahora es asignar un Tween a la propiedad X y uno a Y a 6 mc pero con as3 como lo haria?? ayudita por fis

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

msie8
Citar            
MensajeEscrito el 26 Ene 2010 07:32 pm
Antes de empezar tengo que aclararte 3 puntos:

1. Ya no se puede poner cualquier propiedad a un clip, como en tu ejem que pones "nr" a un clip. En AS3 se tendrías que extender la clase para que tenga una propiedad así o que la clase que extiendas sea dinámica.

Clase Dinámica:

Código ActionScript :

package  
{
   import flash.display.MovieClip;
   
   public dynamic class MyButton extends MovieClip
   {
      public function myButton() {
         
      }
   }
}

2. El código hace una carga de un SWF sin un cargador de por medio (AS2: MovieclipLoader). En AS3 se usará Loader.

3. ahora puedes acceder a tus variables con getChildByName('btn'+i) y dejar de usar ['btn'+i] (que igual se puede pero si no esta bota error, el otro te permite controlarlo).


Bien eso era todo ahora vamos al código:

Migro tu código de ejemplo:

Código ActionScript :

import MyButton;

var btn:MyButton;
for (var i:int = 1; i < 8; i++) { 
   btn = this.getChildByName('btn' + i);
   btn.nr = i;
   btn.addEventListener(MouseEvent.CLICK, btnClickHandler);
}
      
function btnClickHandler(e:MouseEvent):void 
{
   if ( contenedor.getChildByName('myLoader') != null )
   {
      Loader(contenedor.getChildByName('myLoader')).unload();
      contenedor.removeChild( contenedor.getChildByName('myLoader') );
   }
         
   var ld:Loader = new Loader();
   ld.name = 'myLoader';
   ld.load(new URLRequest("estados/"+this.nr+".swf"));
   contenedor.addChild(ld);
}

Para lo que pides asumo que debe ser:

Código ActionScript :

import com.greensock.TweenLite;

for (var i:int = 1; i < 7; i++) { 
   TweenLite.to(this.getChildByName('btn' + i), 1, {x: 200, y:200});
}

Eso era todo :)

Hay cosas que pueden ser sencillas y otras que requieran de algo más. Mi recomendación es que aprendas AS3 de a pocos hasta que puedas cubrir tus necesidades, no es necesario que aprendas todo pero si las bases para entender algunas explicaciones similares a las que mencioné.

Suerte!

Por Otaku RzO

BOFH

1890 de clabLevel

12 tutoriales
1 articulo

Genero:Masculino   Desarrollador de GAIA Bastard Operators From Hell

Lima - Perú

firefox

 

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