そこで、CCSpriteBatchNode を拡張する Berries というクラスを作成しました。ベリーは基本的に私のゲームのコインのようなもので、「衝突」するとスコア値が加算されます。これは、CCSpriteBatchNode の Berries クラスにあるコードです。
- (id) init
{
if((self = [super init]))
{
CCSpriteBatchNode* berryBatch1 = [CCSpriteBatchNode batchNodeWithFile:@"One.png"];
[self addChild:berryBatch1];
CCSpriteBatchNode* berryBatch2 = [CCSpriteBatchNode batchNodeWithFile:@"Two.png"];
[self addChild:berryBatch2];
CCSpriteBatchNode* berryBatch3 = [CCSpriteBatchNode batchNodeWithFile:@"Three.png"];
[self addChild:berryBatch3];
for (int i = 0; i < 100; i++)
{
CCSprite* berry1 = [CCSprite spriteWithFile: @"One.png"];
[berryBatch1 addChild:berry1];
CCSprite* berry2 = [CCSprite spriteWithFile: @"Two.png"];
[berryBatch2 addChild:berry2];
CCSprite* berry3 = [CCSprite spriteWithFile: @"Three.png"];
[berryBatch3 addChild:berry3];
}
numBerries =
}
return self;
}
numBerries は私が作った int です。3 つすべての CCSpriteBatchNode のベリーの数を把握しようとしています。これにより、detectCollision メソッドを作成するときに for ループで使用できるようになります。
何か案は?