2013-07-30 48 views
1

我想在我的cocos2d遊戲中創建一個保存遊戲功能。 實際上這是一種狀態遊戲,遊戲引擎是基礎的,我在引擎之上建立了一個GameLayer(CCLayer)的圖形。其實遊戲引擎是GameLayer的一個屬性。如何爲保存功能序列化cocos2d層次結構

序列化引擎很容易,因爲它最終只包含一些原始值,它只需要所有包含的類的一點點NSCoding

但是,重新創建圖形遊戲的狀態似乎很難。我現在正試圖通過在恢復時進行恢復狀態來恢復狀態,但是這種方法非常乏味且極易出錯,並且花費大量時間並且需要更多時間來進行測試等。如果這樣做會更容易cocos2d層次結構將支持NSCoding或類似的東西。我想我應該只是將NSCoding添加到GameLayer中,但是沒有更簡單的方法(因爲層次結構應該有一組可能的子項)?

+0

記住,你不能(容易)序列化調度的選擇和塊 – LearnCocos2D

+0

好吧,我想這就是爲什麼這個事情不容易存在。無論如何,我一直堅持我的方法,花了一個半天的時間來實施和重構,並且可能需要至少一週的內部測試和糟糕的睡眠,但這就是生活。 – Jonny

回答

0

我用NSCoding進行了我的方法......在找出錯誤(一些很少使用的類,我忘了NSCoding:ify)之後,它通過了測試,應用程序被髮送到Appstore,現在正在運行。 :-P 樣的屁股痛到晚期得到這個要求在一個項目...