我在具有随机位置的场景上生成随机精灵,如下所示:
-(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 轴是随机的,因此存在两个或多个精灵相互重叠的趋势。所以我现在的问题是,如何防止精灵重叠?