0
Cocos2Dコレクションの検出を試して、いくつか質問があります。まず、いくつかの背景:Cocos2D:ループからオブジェクトCGRectにアクセス
これは私のゲームに新しいアイテムを追加するための私の方法です。私のゲームレイヤとは異なるクラスにあります。これは私の項目クラスに位置しています:私は衝突を検出したい場合は
[ItemManager addItem:@"box.png" :itemList];
:
-(void) addItem:(NSString *) theFileName: (NSMutableArray *) theArray{
CCSprite *item = [CCSprite spriteWithFile:theFileName
rect:CGRectMake(0, 0, 50, 50)];
//Positions
int minX = 160;
int maxX = 360;
int xRange = maxX - minX;
int xCord = (arc4random() % xRange) + minX;
item.position = ccp(xCord, -5);
[self addChild:item];
[theArray addObject:item];
は、その後、私はItemManagerと呼ばれるアイテムのクラスへの参照を使用して、私のゲームの層で、このメソッドを使用します2つのスプライトの間、この場合はボックスなどで、addItemメソッドで作成されたボックス矩形を使用できるようにする必要があります。
for(CCSprite *newItem in itemList){
//(if box rectangle collides with my players or whatever
}
元の方法ですべての方法で作成した矩形にどうやってアクセスできますか?
ありがとうございます。この場合
オーケーを、動作しているようです、ありがとうの男!もしスプライトが実際にその周りに矩形を持っていればそれが重要かどうか分かりますか? boudingBoxは数えられた矩形を取りますか? – Alouette
あなたは大歓迎です:) mmあなたの質問をよく理解していません。あなたはそれを言い換えたり、具体的な例を挙げてみることができますか?もう少し詳しく説明すると、このboundingBoxは基本的にスプライトの周りの軸に沿った境界の矩形にすぎません。このバウンディングボックスをよりよく視覚化するには、cocos2dフォルダのccConfig.hにアクセスし、#define CC_SPRITE_DEBUG_DRAW 1を設定します。 –
ああ、すごい素晴らしい機能です! (デバッグ目的の場合)。まあ、私の質問は実際にboudingBoxが引き出されたときに答えられました。もう一度ありがとう、ありがとう! – Alouette