在 Actionscript 3 中,如何创建相同符号的多个实例?

In Actionscript 3, how to create many instances of the same symbol?

虽然编码,但我必须制作同一个 MovieClip 的多个副本以放置在舞台上,每个副本都可以自己进行代码操作

例如,我有一个名为 MC 的 MovieClip,我希望将它的 99 个副本加载到舞台上,每个都在不同的 x 坐标中。我该怎么办?

我想这样做:

第一步:在图书馆,把MC变成class

第 2 步:将以下代码放入场景的脚本中

var MyArray:Array = new Array

for (var i:int = 0; i<99;i++)
{
var MCInstance:MC = new MC
MC Instance = MyArray[i]
MovieClip.(MyArray[i]).x = i*30
}

这有意义吗?

这可能是正确的想法,您的语法有点不对劲。试试这个:

var myArray:Array = [];

for (var i:int = 0; i < 99;i++)
{
    var mc:MC = new MC();
    myArray[i] = mc;
    mc.x = i * 30
}

AS3 风格约定:变量名使用 lowerCamelCase,不要省略构造函数括号,即使它们是可选的,并使用文字创建数组 (source)。

您可以将每个 MovieClip 添加到 Stage 后推送到 Array

var myArray = [];
for(var i:int = 0; i < 99; i++)
{
    var myMc:MC = new MC();
    addChild(myMc);
    myMc.x = myMc.width * i + 2;
    myMc.y = 10;
    myArray.push(myMc);
}