2010-12-01 30 views
0

J'ai un tas de clips sur un calque nommé s1, s2, s3, .. s16.boucle à travers des instances de movieclips flash

J'ai besoin de les ajouter à un tableau de sorte que je puisse sélectionner un nombre aléatoire à jouer.

Quelque chose comme:

var sparkle:Array = new Array(); 
var i:int = new int; 
for(i=0;i=16;i++) 
{ 
    sparkle[i] = 's'+i; 
} 

Répondre

2

Si vous connaissez le nombre total de MovieClips, vous n'avez pas besoin de les stocker dans un tableau.

Obtenez votre numéro aléatoire premier

var random:int = Math.round(Math.random() * totalNumber); 

Ensuite, vous pouvez utiliser une fonction pour retourner le MC que vous voulez

private function getMovieClip(value:int):MovieClip 
{ 
    var mc:MovieClip; 

    for(var i:int ; i < totalNumber ; ++i) 
    { 
     if(this.getChildAt(i).name == "s"+ random.toString()) 
     { 
      mc = this.getChildAt(i) as MovieClip; 
      break; 
     } 
    } 

    return mc; 
} 
1

Essayez ceci:

éclat var: Array = [];

var n: int = 16; // numberOfClips;

for (var i: int = 0; i < n; i ++) {

var tempClip:MovieClip = MovieClip(getChildByName("s"+i)); 

sparkle[i] = tempClip; 

}

Vous pouvez ensuite une boucle à travers votre réseau pour référencer les clips