私はプレイヤーのような「ヘビゲーム」を持っていますが、体が特定の長さに達したときにエンドテールピースを取り外すときにいくつかの問題が発生しています。今私はこれを持っています:
if (i > maxHealth) {
id object = [tail objectAtIndex:i-maxHealth-1];
[tail removeObject:object];//This part doesn't work, if I comment this line out it works but the object is still in the array
[self.tileMap removeChild:object cleanup:YES];
}
i
シーンが初期化されたときの「ヘビ」の長さはi
0に等しく、プレーヤーが移動すると、「テール」画像がシーンとtailと呼ばれるNSMutableArrayに追加されます。私はこれをデバッガーで取得します:
Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM insertObject:atIndex:]: index 4 beyond bounds [0 .. 2]'
object
配列からスプライトを削除する行を追加する前に、シーンからスプライトを削除するために使用する前に、それは正常に機能したため、これは私には意味がありません。