循环通过movieclips flash的实例

时间:2010-12-01 11:05:37

标签: flash actionscript for-loop

我在一个名为s1,s2,s3,... s16的图层上有一堆影片剪辑。

我需要将它们添加到数组中,以便我可以选择一个随机数来播放。

类似的东西:

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

2 个答案:

答案 0 :(得分:2)

如果您知道MovieClip的总数,则无需将它们存储在数组中。

先获取随机数

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

然后您可以使用函数返回所需的MC

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 :(得分:1)

试试这个:

var sparkle:Array = [];

var n:int = 16; // numberOfClips;

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

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

sparkle[i] = tempClip;

}

然后,您可以遍历数组以引用剪辑