2

主にゲームのIOSアプリケーションを開発するための初心者です。ゲームを完了し、アプリストアに送信しました。将来的には、ゲームセンター、主にスコアのリーダーボード(すべての時間、月次、週次、および今日)を含む更新を送信したいと思います。完成したゲームをgame-centerと統合する方法を理解するのに苦労しています。私にはわかりにくいもう1つの部分は、コードに何を記述し、gamekitフレームワークがゲームセンターに送信する番号(スコア)をどのように認識するかです。誰かが詳細な情報を提供できれば、私はそれを大いに感謝します。ありがとう!

4

3 に答える 3

6

ここにサンプルプロジェクトがあります

http://developer.apple.com/library/ios/#samplecode/GKTapper/Introduction/Intro.html

あなたがこの機能を持っているスコアを送るために、スコアはスコアであり、カテゴリーはあなたがitunesconnectで設定するリーダーボードの名前です。

- (void) reportScore: (int64_t) score forCategory: (NSString*) category {

GKScore *myScoreValue = [[[GKScore alloc] initWithCategory:category] autorelease];
myScoreValue.value = score;

[myScoreValue reportScoreWithCompletionHandler:^(NSError *error){
    if(error != nil){
        NSLog(@"Score Submission Failed");
    } else {
        NSLog(@"Score Submitted");
    }

}];
}

プレーヤーが殺されたときにスコアを送信するには、この関数を使用する必要があります。スコアが最高であったかどうかを追跡する必要はありませんが、0より大きいかどうかを追跡できます。

このチュートリアルでは、彼自身のプロジェクトでサンプルプロジェクト関数を使用します。見てみましょう。ポイントと成果の送信が含まれています。

http://maniacdev.com/2011/05/tutorial-game-center-basics-leaderboards-and-achievements/

于 2012-08-31T07:04:42.923 に答える
2

ゲームセンターはiOSSDK4.1以降で利用可能です

1)Xcodeヘルプを開きます。

2)上部にナビゲーションバーが表示され、「ドキュメント」セクションが表示され、マウスを「iOS 5.1ライブラリ」(私の場合)と表示されている場所に移動します。

3)次に、「ネットワークとインターネット」の上にマウスを移動してクリックします。

4)これで利用可能なAPIのリストができました。

その後、リーダーボード実績など、必要なAPIを探します。要件に応じて、 GKLeaderboardsなど、興味のあるものを探す必要があります。これらのドキュメントは、必要な他のドキュメントにリンクする必要があります。GKLeaderboardsのドキュメントはWebで見つけることができます

編集:あなたが開発したゲームは、ゲームの各インスタンスの後にプレーヤーにいくらかのスコアを表示します。そのスコアを関数に投稿し- (void) reportScore: (int64_t) score forCategory: (NSString*) category ます。[self.gameCenterManager reportScore:yourscore forCategory: @"yourgamecategory"];

このリンクからのGameCenterManager.hおよびGameCenterManager.mの場合

于 2012-08-31T05:55:45.680 に答える
0

ゲームセンターにスコアを更新するには、このルーチンを使用します。

- (void) reportScore: (int64_t) score   :(NSString*) YOUR_LeaderBoard_ID
{
    GKScore *scoreReporter = [[GKScore alloc] initWithCategory:YOUR_LeaderBoard_ID];
    scoreReporter.value = score;
    scoreReporter.context = 0;
    [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
        if (error != nil)
        {
            IsConnectFail = true;
        }else{
            IsConnectFail = false;   
        } 
    }]; 
}
于 2014-01-11T10:52:17.477 に答える