0

私はプレイヤーのような「スネークゲーム」を作っていて、4まで移動するたびに前の位置にブロックを追加し、最後のブロックを削除するように体を細かく動かしています...など。各ブロックをaにNSMutableArray(各ブロックはスプライトであり、スプライトを配列に追加します)、配列内のスプライトの1つの位置を取得する方法を考えていました。「頭」が自分自身の上に移動しようとしているかどうかを確認できるように、これが必要です。

PS私はiPhone用のcocos2dを使用しています。


位置と言うときは、配列内のインデックス位置ではなく、座標を意味します。


[tail insertObject:block atIndex:i];
[self addChild:[tail objectAtIndex:i]];
i +=1;
CCSprite *sect;
for (int j = 0; j >= i; j++) {
    sect = [tail objectAtIndex:j];
}
if (i > maxHealth) {   
    [self removeChild:[tail objectAtIndex:i-maxHealth-1] cleanup:YES]; 
    id object = [tail objectAtIndex:i-maxHealth-1];
    [tail removeObject:object];
}

シーンが開始iされると 0 に設定され、最大ヘルスは 3 に等しくなります。

4

1 に答える 1

2

配列内のノードの位置を取得しますか? お気に入り

// Get the node from the array
CCNode *node = (CCNode*)[myArray objectAtIndex:0];
// Retrieve the position
CGPoint nodePosition = node.position;
于 2012-07-29T21:30:28.573 に答える