0

私はタイル ベースのゲームを使用しており、ジョイスティックも使用しています。ジョイスティックのスプライト ボディを使用すると完全に移動しますが、タイル マップはスクロールできません。

-(void)setCenterOfScreen:(b2Vec2)position
{
    int x=MAX(position.x*PTM_RATIO, size.width/2);
    int y=MAX(position.y*PTM_RATIO, size.height/2);


    int x1=MIN(x, (theMap.mapSize.width * theMap.tileSize.width-size.width/2));
    int y1=MIN(y, (theMap.mapSize.height * theMap.tileSize.height-size.height/2));


    b2Vec2 goodpoint=b2Vec2(x1,y1);
    NSLog(@"GoodPoint X: %f",goodpoint.x);
    NSLog(@"GoodPoint Y: %f",goodpoint.y);


    b2Vec2 differ=b2Vec2((size.width/2-goodpoint.x),(size.height/2-goodpoint.y));
    position=differ;
}

それは本当の論理ですか?私を助けてください

前もって感謝します

4

1 に答える 1

1

タイル マップに関するこの非常によく書かれたチュートリアルを確認することをお勧めします。ジョイスティックは使用しませんが、ジョイスティックを使用するようにコードを変更するのは非常に簡単です (私は自分で行いました)。 http://www.raywenderlich.com/1163/how-to-make-a-tile-based-game-with-cocos2d

于 2012-08-10T12:58:15.740 に答える