Actionscript 重写MovieClip';实例中的变量
假设我有一个movieclip,在这个movieclip中我定义了一些Actionscript变量。e、 gActionscript 重写MovieClip';实例中的变量,actionscript,instance-variables,overriding,Actionscript,Instance Variables,Overriding,假设我有一个movieclip,在这个movieclip中我定义了一些Actionscript变量。e、 g var majorValue:Number = 20; var minorValue:Number = 10; 默认情况下,舞台上此movieclip的每个实例都将具有这些变量,并设置为这些值。现在,让我们假设我在舞台上有这部电影的三个例子,我称之为“Moe”、“Larry”和“Curly”。假设我想让Moe和Larry作为movieclip的默认实例,但我想调整“Curly”实例
var majorValue:Number = 20;
var minorValue:Number = 10;
默认情况下,舞台上此movieclip的每个实例都将具有这些变量,并设置为这些值。现在,让我们假设我在舞台上有这部电影的三个例子,我称之为“Moe”、“Larry”和“Curly”。假设我想让Moe和Larry作为movieclip的默认实例,但我想调整“Curly”实例,使其majorValue为50,minorValue为15。我该怎么做呢
我尝试通过指定以下内容来实现:
Curly.majorValue = 50;
Curly.minorValue = 15;
在父时间轴中,但这似乎不起作用,因为动作脚本似乎首先在父剪辑中执行,然后在子剪辑中执行。换句话说,我对“Curly”实例的特殊值的声明被片段的默认声明覆盖,这些声明在父片段的actionscript之后执行
有人知道如何为特定实例覆盖movieclip的默认变量吗?关于使用时间线,有一个老技巧是,“如果有疑问,请添加关键帧”。实际上,更好的建议是尽可能避免完全使用时间线 我认为你对正在发生的事情的总结大概是对的。实际上,您正在尝试在实例正确实例化之前更新其属性。实例化后,这些值将重置为默认值
解决方案是添加一个额外的框架,并将设置实例属性的代码放在第二个框架中(以及
stop
操作)。这将确保在实例化实例后执行代码 如果你把你的文件放在某个地方,贴上链接,我会看一看。好的。试试这个: