次のようなランダムな位置を持つシーンでランダムなスプライトを生成しています。
-(void)addWRight
{
int randNo = arc4random()%5;
int randType = arc4random()%3;
for(int i = 0; i <= randNo; i++)
{
NSString *strSprite = @"1.png";
if(randType == 0)
{
strSprite = @"1.png";
}
else if(randType == 1)
{
strSprite = @"2.png";
}
else
{
strSprite = @"3.png";
}
int minX = 130;
int maxX = 240;
int randX = arc4random() % (maxX - minX) + minX;
CCSprite *spr = [CCSprite spriteWithFile:strSprite];
spr.position = ccp(randX, 200);
[self addChild:spr];
[whiteArray addObject:spr];
}}
randNo の結果に応じてスプライトを追加します。たとえば、randNo の値が 2 の場合、3 つのスプライトが追加されます。私の問題は、スプライトのランダムな x 軸位置にあります。130~240の間のどこかに配置されるようにしました。これでうまくいきますが、x軸がランダム化されているため、2つ以上のスプライトが重なる傾向があります。私の質問は、スプライトが重ならないようにするにはどうすればよいですか?