私は基本的にゲーム、ブレイクアウト クローンを持っています。プログラムでレベルを作るのに飽きたので、スプライトやノードなどを画面上に配置できるエディタ=Scenedesignerを手に入れました。
質問 - その .plist ファイルをゲームにロードして、ゲームに理解させるにはどうすればよいですか?
たとえば、スプライトに複合オブジェクトを使用しています。たとえば、ボールは ccsprite をプロパティとして含む Ball クラスに属していますが、どのように機能しますか?
私は基本的にゲーム、ブレイクアウト クローンを持っています。プログラムでレベルを作るのに飽きたので、スプライトやノードなどを画面上に配置できるエディタ=Scenedesignerを手に入れました。
質問 - その .plist ファイルをゲームにロードして、ゲームに理解させるにはどうすればよいですか?
たとえば、スプライトに複合オブジェクトを使用しています。たとえば、ボールは ccsprite をプロパティとして含む Ball クラスに属していますが、どのように機能しますか?
plist をどのように作成したかはわかりませんが、NSDictionaryの使用に関するこの投稿はあなたの質問に答えるはずです: https://stackoverflow.com/a/1760384/388412
...基本的にはNSArrayと同じです。両方のクラスがオブジェクトを格納し、ファイル/URL から読み書きできます (したがって、plist の読み書き)。
したがって、おそらく辞書または配列から始めて、それをファイルに書き込んで plist を作成する必要があります。逆に、特定の plist の形式によっては問題が発生する可能性があります。
より複雑なシリアル化については、NSCodingプロトコルを調べる必要があります。これにより、オブジェクト ツリー全体をシリアライズおよびデシリアライズできます ( NSArchiverおよびNSUarchiverを使用)。ただし、NSArchiver/NSUnarchiver を別々に使用しないでください。クラスを NSCoding に準拠させてください。
ケースがそれほど複雑でない場合は、処理が少し簡単なので、NSDictionary / NSArray シリアル化から始めることをお勧めします。
dictionaryWithContentsOfFile
method ofNSDictionary
と
arrayWithContentsOfFile
method ofを使用NSArray
して、plist の内容に応じて plist を配列または辞書に変換できます。