2015-07-20 15 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