필자는이 코드를 사용하여 가속도계 기반 프로젝트에서 일하고 :Cocos2d 가속도계 문제?
을 .H
{
CCSprite *donk;
float movement;
}
하는 .m
-(id) init
{
if((self=[super init])) {
donk = [CCSprite spriteWithFile:@"fe1.png" rect:CGRectMake(0, 0, 50, 50)];
donk.position = ccp (240,75);
[self addChild:donk];
[self scheduleUpdate];
self.isAccelerometerEnabled = YES;
[[UIAccelerometer sharedAccelerometer] setUpdateInterval:1/60];
}
return self;
}
-(void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {
float deceleration = .1f;
float sinsitivity = 10.0f;
float acelx = +acceleration.y;
movement = movement * deceleration + acelx * sinsitivity;
}
- (void)update:(ccTime)delta {
CCLOG(@"Position: %f", donk.position.x);
if (donk.position.x > 0 && donk.position.x < 480) {
donk.position = ccp(donk.position.x + movement, donk.position.y);
}
if (donk.position.x < -55) {
donk.position = ccp(50, donk.position.y);
}
if (donk.position.x > 430) {
donk.position = ccp(430, donk.position.y);
}
}
진짜로 이상한 일이 하나 개의 프로젝트에서 작동하지만 내가 복사 그것을 다른 사람에게 붙여 넣었고 이제는 효과가 없습니다. 스프라이트가 화면에 있지만 움직이지 않고 CCLOG는 x 값을 240으로 유지합니다. 무엇이 잘못 되었습니까? 내가 놓친 게 있니?
나는 그것을 시도, 그것은 종류의 일을하지만, 그것은 단지 왼쪽으로 매우 느리게 이동하고 오른쪽에있는 모든 이동 wouldnt가, 내 코드는 여전히 가속도계 뭔가해야 확인 –