1

シーンを Player スプライトに追従させようとしましたが、何らかの理由で追従しません。誰でも理由を説明できますか?チュートリアルに従ってみましたが、うまくいきません。これは私の現在のコードです:

[self setViewpointCenter:Player.position];


    -(void)setViewpointCenter:(CGPoint) position {
    CGSize winSize = [[CCDirector sharedDirector] winSize];

    int x = MAX(position.x, winSize.width / 2);
    int y = MAX(position.y, winSize.height / 2);
    x = MIN(x, (theMap.mapSize.width * theMap.tileSize.width) - winSize.width / 2);
    y = MIN(y, (theMap.mapSize.height * theMap.tileSize.height) - winSize.height / 2);
    CGPoint actualPosition = ccp(x, y);

    CGPoint centerOfView = ccp(winSize.width/2, winSize.height/2);
    CGPoint viewPoint = ccpSub(centerOfView, actualPosition);
    self.position = viewPoint;
}
4

2 に答える 2

1

元のコードを破棄し、LearnCocos2D が推奨するクリーンなコードに置き換えました

[self runAction: [CCFollow actionWithTarget:Player]];

LearnCocos2D にもう一度感謝します。

于 2013-04-15T11:27:43.863 に答える