Сохранение и загрузка настроек и хода игры в iOS - PullRequest
2 голосов
/ 20 января 2011

Я пишу игру для iPhone и хочу сохранить / загрузить пользовательские настройки (например, громкость музыки), а также сохранить прогресс игры.

Для каждого уровня я хочу иметь некоторый объект структуры, представляющий его состояние - открыт ли он, пройден ли он, время и т. Д.

Я использую cocos2d.

Я обнаружил, что могу использовать класс NSUserDefaults для хранения настроек игры, но я не уверен, что это полезно для хранения прогресса игры.

Любая помощь приветствуется!

Ответы [ 2 ]

3 голосов
/ 20 января 2011

Использовать NSUserDefaults. Но используйте их для сериализации целых объектов и загрузки их обратно.

Переопределите encodeWithCoder: и initWithCoder: для классов объектов, состояния которых вы хотите сохранить. Таким образом, вы можете напрямую сохранять / сериализовать весь объект на диск и снова создавать их.

Кроме того, вам не нужно трогать существующие методы, вам просто нужно добавить дополнительные методы к каждому классу, который необходимо сохранить.

1 голос
/ 20 января 2011

NSUserDefaults хорош для хранения простых настроек, но для полного состояния игры вам может понадобиться что-то вроде Core Data .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...