2015-07-20 14 views
0

我知道这个问题有很多变体,但我找不到适合我的答案。从嵌套的动画片段调用.as文件中的函数

具体来说,我在.as文件中有一些简单的函数。我使用#include,我可以在主时间线上调用函数,但是我似乎无法从嵌套的动画片段的时间线中调用它们。

我在主时间轴上的动画片段内的动画片段内有一个动画片段。我如何访问.as文件中的函数?

我试过this.parent.parent.parent.function()和_root.parent.parent.function()但都不起作用。

这些函数通过Scaleform链接到一个游戏引擎,所以我宁愿不使用类,因为这会给我带来麻烦。出于同样的原因,我使用的是AS2,而不是AS3(AS2不受游戏引擎附带的Scaleform版本的支持)。

非常感谢。

回答

0

我认为,你可以简单地使用:

_root.your_function(); 

或者,如果你的影片剪辑在主时间轴直接使用:

this._parent.your_function(); 

在这里,不要忘了,在AS2中,我们使用_parent获取当前对象的父级。

您可以使用此得到所有父可用的功能包括:

for(var element in this._parent){ 
    if(typeof this._parent[element] == 'function'){ 
     trace(element + ' : ' + this._parent[element]); 
    } 
} 

希望能有所帮助。

+0

非常感谢; _root.my_function();做到了。我以为_root只是提到包含代码的对象的根,你每天都会学到一些新的东西:)将在_parent上阅读。再次感谢。 – Absinthe