使用UIAccelerometer移动CCSprite - cocos2D

时间:2013-08-16 13:53:51

标签: objective-c cocos2d-iphone

我希望能够使用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上运行时,它只是在同一个地方振动,而我无法将其移动到顶部或底部。怎么了?

1 个答案:

答案 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);无效的原因。