有没有办法以编程方式重置排行榜?

时间:2011-09-02 19:30:57

标签: iphone game-center leaderboard

当我查看GKScore和GKLeaderboard的文档时,无法将玩家报告的分数重置为GameCenter中的特定排行榜。我对吗?

这似乎很不一致,因为可以重置成就:

[GKAchievement resetAchievementsWithCompletionHandler:^(NSError *error) { ... }];

有什么想法吗?

1 个答案:

答案 0 :(得分:5)

你是对的。在实时应用中启动后,无法重置Game Center排行榜类别或删除类别。

Apple确实允许重置成就的方法。

我所知道的唯一工作就是只允许旧类别死亡,将它们置于底部,将与该类别相关联的标签更改为“高分(已存档)”,然后创建一个新类别并将其标记为“高分”并将其排序到顶部。这会给你一个新鲜的。但是当然仍然有25个排行榜类别的限制 - 所以在某些时候你会沉没,除非你只是弄清楚如何重用旧的排行榜。 (例如,将所有分数x10设为一致,以便每个人都能很快超过旧分数)

编辑...在最近的版本中,我实际上在最近的应用更新中重复使用了排行榜类别。该类别的最初用途是相当低的分数......在低1000的分数。该类别的新用途将从10倍到1000倍不等。因此我知道该类别中的任何旧分数都将在游戏的前几场比赛中被删除。当然,类别ID不能更改(com.company.app.category),但描述(英语或其他)可以更改。它可能会变得令人困惑,因为你在为完全不同的东西保存分数时使用的是具有一个id的类别。但是使用#define kBlahBlahBlah来@“com.company.app.blah”你的代码可以使用任何名称来简化事情。希望有所帮助。