当用户点击一个按钮时,我想要将一个精灵移动到下一个最近的球(精灵),这样他们就可以从一个地方移动到另一个地方。
因为屏幕上一次只能有有限数量的球,所以我想我应该将它们存储在一个数组中,然后当它们移出屏幕时(被我准备好的一个函数销毁),它们就会从数组中删除。
我有当前设置(不在循环自动取款机中):
ball = [[CCSprite spriteWithFile:@"ball.png"] retain];
ball.position = ccp(randX, randY);
NSMutableArray *myArray = [[NSMutableArray alloc] init];
[myArray addObject: ball];
[myArray addObject: ball];
[myArray addObject: ball];
for (int i = 0; i < 2; i++) {
CCSprite *sprite = [myArray objectAtIndex:i];
NSLog(@"%@", sprite.position.x);
}为什么NSLog会在控制台打印"(null)“?
发布于 2012-08-07 11:43:52
看起来你实际上是想找到X位置最低的精灵:
CCSprite *sprite = [myArray objectAtIndex:0];
for (CCSrpite *s in myArray)
{
if (s.position.x < sprite.position.x)
sprite = s;
}
// now 'sprite' will contain the sprite with the lowest X position发布于 2012-08-07 11:25:49
哈哈哇!将@"%@“更改为@"%f”是一个简单的例子。LOL!
https://stackoverflow.com/questions/11838780
复制相似问题