将动作脚本 2 转换为动作脚本 3

convert action script 2 to action script 3

好的,我阅读了论坛,似乎任何询问有关将 AS2 转换为 AS3 的人都会被 "why would you use AS2, just rewrite it in AS3 from scratch" 之类的帖子激怒。所以请不要这样回答,我只是需要帮助来弄清楚这个特定的代码片段。这是AS2,我不知道它在做什么。

if (_root.components == undefined) {
     _root.components = "";
}
_root.components = _root.components + _root.getInstanceAtDepth(this.getDepth()) + " ";

我用谷歌搜索了各个方法 'getInstanceAtDepth' 和 'getDepth',了解到它们处理电影的分层。麻烦是'_root.components'。如果这是将影片剪辑引用为 'root',则没有方法或 属性 名为 'components'。您可以将组件放在舞台上并使它们成为 movieclip fla 文件的一部分,但这似乎也无法解释代码的作用。有谁知道 _root 在这里指的是什么,什么对象有 属性 'components'?

谢谢,

我认为您想了解 AS2 代码不对其进行转换。

该代码显然在组件(Button、MovieClip)的代码中使用,它只是试图将该组件的名称连接到全局字符串 (_root.components)。

例如,如果我有一个名为 button 的按钮和一个名为 movieclip 的 MovieClip,当我使用它们的 onPress() 函数执行该代码时,我会得到类似这个:

_level0.button _level0.movieclip

希望能帮到你。