プレイヤーが左右にしか移動できない進行中のゲームがありますが、マップ上の特定の場所では、上または下に押して、それらの方向の新しいシーンに移動できます (後壁のドアなど)。
ユーザーが押したときにコードをトリガーするように SneakyJoystick を設定するにはどうすればよいですか? 現時点では、プレーヤーを左/右に移動するために以下を実行しています。これを続行したいのですが、(今のところ) プレーヤーがスティックを完全に上または下に押したときに CCLOG が実行されるようにします。何か案は?
- (void) applyJoystick:(SneakyJoystick *)aJoystick forTimeDelta:(float)deltaTime {
CGPoint scaledVelocity = ccpMult(aJoystick.velocity, 325.0f);
CGPoint oldPosition = [self position];
CGPoint newPosition = ccp(oldPosition.x + scaledVelocity.x * deltaTime, oldPosition.y);
[self setPosition:newPosition];
if (oldPosition.x > newPosition.x) {
self.flipX = YES;
} else if (oldPosition.x == newPosition.x) {
// Intentionally do nothing to preserve orientation at start of scene!
} else {
self.flipX = NO;
}
}