Прямо сейчас я пытаюсь заставить свой спрайт двигаться влево, когда устройство наклоняется влево, и двигаться вправо, когда устройство наклоняется вправо.Движение оси Y вообще отсутствует. (Это хорошо) Код, который я использую, кажется, работает очень хорошо, за исключением того, что при наклоне влево спрайт перемещается только на треть пути по экрану, а не к другому.сторона, как я этого хочу.Есть ли у вас какие-либо предложения о том, как заставить это работать?Я хотел бы сохранить это строго для приложения cocos2d.Нет бурундук или box2D.Это портретный режим.
Вот код:
- (void) accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration*)acceleration {
float destX;
float destY;
BOOL shouldMove = NO;
if (acceleration.x > 0) {
destX = acceleration.x * kPlayerSpeed;
shouldMove = YES;
} else if (acceleration.x < 0) {
destX = acceleration.x * kPlayerSpeed;
shouldMove = YES;
}
if(shouldMove) {
CCAction *action = [CCMoveTo actionWithDuration:1 position:CGPointMake(destX, 40)];
[action setTag:kHeroMovementAction];
[player runAction:action];
}
else {
// should stop
[player stopActionByTag:kHeroMovementAction];
}
}