我希望能够使用UIAccelerometer移动CCSprite。它应该只上下移动。我使用的代码是:
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
valueX = acceleration.y * 45.0;
int newPos = (int)(valueX + _rocket.position.x);
CGPoint newCenter = ccp(100, newPos);
_rocket.position = newCenter;
}
_rocket是精灵。
当我在iphone上运行时,它只是在同一个地方振动,而我无法将其移动到顶部或底部。怎么了?
答案 0 :(得分:1)
尝试int newPos = (int)(valueX + _rocket.position.y);
而是int newPos = (int)(valueX + _rocket.position.x);
根据您的代码position.x始终为100。
这就是int newPos = (int)(valueX + _rocket.position.x);
无效的原因。