0

我有一个名为“字符”的课程。有些角色是可玩的(playable = true)。所有可播放的角色都有一个名为“follower”的子movieClip(不是用ActionScript 创建的)。每当我尝试使用代码访问“追随者”时,都会出现错误,因为“追随者”并不“必然”存在。这是因为有些角色没有“追随者”。

但是,我已经使用 'if (this.contains(follower)) { .. }' 来确保它在继续之前确实存在,但我仍然收到错误消息说 'follower' 可能不存在。

为什么我会收到错误消息?我能做些什么吗?我必须使用 AS3 来创建追随者吗?

4

4 回答 4

0

你可以像这样访问'follower':this["follower"]- 所以你不会得到编译时错误。

此外,您可以检查playable属性而不是检查是否follower存在。

于 2013-01-24T17:38:12.030 回答
0

这缺少一些信息,这是一个 AS2/AS3 项目(基于您的问题)。如果是这样,问题是因为 AS3 无法访问 AS2 内容。

“我必须使用 AS3 来创建追随者吗?” - 如果它是一个 AS3 项目,是的,请这样做。

如果您的项目都是 AS2/3,请尝试使用 LocalConnection 来控制“follower”剪辑。如果我的假设不正确,请纠正我。

于 2013-01-24T20:46:27.780 回答
0

课堂内Character

if(this["follower"]) {
    // follower instance exists
}
于 2013-01-24T18:31:32.477 回答
0

您可以在 Character 类(类型 MovieClip)中声明一个公共follower变量。这将在不可播放角色中为空,并将设置为可播放角色中的子剪辑。

这仅在您关闭“自动声明阶段实例”时才有效。

于 2013-01-24T18:20:41.890 回答