iPhone游戏中心提交最高分?

时间:2010-10-06 12:55:09

标签: iphone objective-c game-center

我正在使用以下功能向游戏中心提交分数。如何修改下面的代码,以便我只能在已经提交的分数最高的情况下发送分数?而且我不想在当地保持分数。有什么帮助吗?

- (void) reportScore: (int64_t) score forCategory: (NSString*) category 
{
 GKScore *scoreReporter = [[[GKScore alloc] initWithCategory:category] autorelease]; 
 scoreReporter.value = score;
 [scoreReporter reportScoreWithCompletionHandler: ^(NSError *error) 
  {
   [self callDelegateOnMainThread: @selector(scoreReported:) withArg: NULL error: error];
  }];
}

感谢。

编辑:我发现它仅由游戏中心处理...只有最高分才会显示在游戏中心应用中。

1 个答案:

答案 0 :(得分:3)

您可以使用

检索以前的分数
GKLeaderboard *query = [[GKLeaderBoard alloc] initWithPlayerIDs:[NSArray arrayWithObject:yourPlayerId]];

if (query != nil)

{

    [query loadScoresWithCompletionHandler: ^(NSArray *scores, NSError *error) {

        if (error != nil)

            // handle the error.

        if (scores != nil)

            // process the score information.

        }];

}

获取有关Apple GameKit Programming Guide

的更多信息