spriteArray という配列があります。
@property (retain) NSMutableArray *spriteArray;
@synthesize spriteArray = spriteArray_;
そして、私はスプライトを持っています:
@property (nonatomic, assign) CCSprite *sprite;
@synthesize sprite = sprite_;
spriteNumber (整数) の値に応じて、特定の数のスプライトを作成します。
for (int i = 0; i < spriteNumber; i++) {
if ([spritetype_ isEqualToString:@"typeOne"]) {
self.sprite = [[typeOne alloc] initTypeOne];
self.sprite.position = randomPoint;
[self.spriteArray addObject:self.sprite];
[self addChild:self.sprite];
}}
スプライトは正常に初期化され、画面に表示されます。ただし、衝突検出に使用しようとすると、そのうちの 1 つだけが機能します。
if (CGRectIntersectsRect(self.sprite.boundingBox, self.swat.boundingBox)) {
//swat is another sprite
NSLog(@"detected");
}
私が望んでいたのは、衝突検出が機能するように、スプライトが作成されるたびに「インデックス」を付けることです。
サンプルコード: http://pastebin.com/swNUwB6U