1

我正在使用 XML 在 Flash 游戏中存储某些默认变量。在我的主类中访问这些变量很容易,因为我可以实例化并加载一个 XML 变量(在本例中为defaultXML),然后执行defaultScore = defaultXML.defaults.score.@value;或类似的操作。但是,如果我想从子类中检索该数据,我必须使用defaultScore = MovieClip( this.parent ).defaultXML.defaults.score.@value;. 当我在孙辈班级时,它变得更加混乱,因为我什至不知道有一种方法可以从祖父母那里检索值。

在 Actionscript 中从 XML 文件中检索值的好方法是什么?我应该继续做我正在做的事情,还是有更简单的方法?

4

1 回答 1

2

您可以简单地通过链接调用来访问祖父母对象parent以达到您需要的级别:

MovieClip( this.parent.parent.parent ).defaultXML.defaults.score.@value;

当您将代码添加到在时间轴上手动制作的现有影片剪辑中时,这是一种让事情正常工作的简单方法,但如果嵌套影片剪辑的结构发生变化,它很容易中断。

另一种方法是将 xml 存储为全局对象,以便可以从时间轴层次结构上的任何位置访问它。

global.defaultScore = defaultXML

当您需要在简单的应用程序中将代码添加到时间线时,这些是快速简便的技术。在更高级的应用程序中,所有代码都只存在于类中,然后面向对象技术是在需要的地方传递 xml 数据的方式。

于 2013-01-22T00:39:08.557 回答