在 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);
}
虽然编码,但我必须制作同一个 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);
}