完成した最高レベルを示すインデックス 0 の数値オブジェクトを含む playerData という plist ファイルがあります。ビューを読み込んだ後、ゲーム ロジック全体で使用されるこのオブジェクトの整数値を読み取りました。プレーヤーがゲームに勝った場合、この番号をインクリメントして plist ファイルに書き込みたいと思います。これが私が持っているコードです(ifステートメントに含まれています)
levelNumber++;
NSNumber *levelNSNum = [[NSNumber alloc] initWithInteger:levelNumber];
[playerData replaceObjectAtIndex:0 withObject:levelNSNum];
[playerData writeToFile:[[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"PlayerData.plist"] atomically:YES];
NSLog(@"%i should be written to file", levelNumber);
ログが機能するので、if ステートメントの条件が満たされ、値が以前に plist ファイルにあった値と同じではないことがわかりますが、何らかの理由でこのデータがそのデータに上書きされていません。
私はこれに比較的慣れていないので、簡単で愚かな間違いを犯している可能性があります。答えを追跡できないようです。ご協力ありがとうございました!