tengo una Clip de pelicula en la biblioteca llamado Box esta vinculado con una clase Box tambien.
he creado un monton de copias de este clip suponemos 1000;
no se si puede pero lo que quiero hacer es anadir un metodo dentro de Box cada ver que occure un evento, los clips tambien cambien de posicion; sin hacer for(vari:uint=0;i<1000;i++){};
Código ActionScript :
package{
import flash.display.*;
public class Box extends MovieClip{
public function Box(){
// aqui el clip de pelicula toma un color aleatoria;
}
public static function changePos(factor):void{
if((this.x+factor)<stage.stageWidth && (this.y+factor)<stage.stageHeight){
this.x+=factor;
this.y+=factor;
}else{
this.x-=factor;
this.y-=factor;
}
}
}
}
//
for(var i:uint=0;i<1000;i++){
var myBox:Box=new Box();
myBox.name="box"+i;
myBox.x=Math.floor(Math.random()*stage.stageWidth);
myBox.y=Math.floor(Math.random()*stage.stageHeight);
this.addChild(myBox);
}
myBtn.addEventListener(MouseEvent.CLICK,pressHandler);
//
public function pressHandler(event):void{
var coefficient:Number=Math.floor(Math.random()*5);
myBox.changePos(coefficient)
}Me sale error dice que el metodo this no se puede usar en static method
cuando lo quite el static se aplica solamente al ultimo clip
//
lo que quiero hacer exactamente es moverlos sin hacer for o sea hacer un metodo como la de
Datagrid.labelFunction , Array.forEach pero ejecutar lo cuando quiera
