Классы NSCoding и GameplayKit

В моей игре у меня есть класс Combat, соответствующий NSCoding, который также использует объекты GameplayKit GKGridGraph и GKGridGraphNode, которые не соответствуют NSCoding. Есть ли способ сериализовать/десериализовать эти объекты?


person Rhuantavan    schedule 21.11.2015    source источник


Ответы (1)


Как вы заметили, в этих классах нет поддержки NSCoding. (Однако это было бы хорошим запросом функции для отправки в Apple.)

Однако должна быть возможность создать свое собственное сериализованное представление графа при кодировании ваших классов, затем прочитать его и инициализировать новые объекты GKGraph и GKGraphNode соответственно в вашей реализации init(coder:). Обратите внимание, что при этом вам придется тщательно пройти по графу, чтобы зафиксировать все соединения узлов.

person rickster    schedule 14.12.2015