2013-07-30 49 views
1

我想在我的cocos2d游戏中创建一个保存游戏功能。 实际上这是一种状态游戏,游戏引擎是基础的,我在引擎之上建立了一个GameLayer(CCLayer)的图形。其实游戏引擎是GameLayer的一个属性。如何为保存功能序列化cocos2d层次结构

序列化引擎很容易,因为它最终只包含一些原始值,它只需要所有包含的类的一点点NSCoding

但是,重新创建图形游戏的状态似乎很难。我现在正试图通过在恢复时进行恢复状态来恢复状态,但是这种方法非常乏味且极易出错,并且花费大量时间并且需要更多时间来进行测试等。如果这样做会更容易cocos2d层次结构将支持NSCoding或类似的东西。我想我应该只是将NSCoding添加到GameLayer中,但是没有更简单的方法(因为层次结构应该有一组可能的子项)?

+0

记住,你不能(容易)序列化调度的选择和块 – LearnCocos2D

+0

好吧,我想这就是为什么这个事情不容易存在。无论如何,我一直坚持我的方法,花了一个半天的时间来实施和重构,并且可能需要至少一周的内部测试和糟糕的睡眠,但这就是生活。 – Jonny

回答

0

我用NSCoding进行了我的方法......在找出错误(一些很少使用的类,我忘了NSCoding:ify)之后,它通过了测试,应用程序被发送到Appstore,现在正在运行。 :-P 样的屁股痛到晚期得到这个要求在一个项目...