我设计了一个游戏来将高分保存到 Game Center 排行榜。现在,我的项目经理说。“所以那些没有开启游戏中心的,让他们在本地保存高分。”
好的,但这可能会在以下情况下引起混淆:
- 用户在没有 GC 的情况下玩游戏并获得高分。然后用户登录 GC 并再次切换到您的游戏。您应该一起删除本地高分的显示吗?
当涉及到这种情况时,是否有一个普遍的“这样做”?
我设计了一个游戏来将高分保存到 Game Center 排行榜。现在,我的项目经理说。“所以那些没有开启游戏中心的,让他们在本地保存高分。”
好的,但这可能会在以下情况下引起混淆:
当涉及到这种情况时,是否有一个普遍的“这样做”?
IMO最大的担忧是保持用户的高分。如果出现用户本地高分A,游戏中心高分B的情况,则显示max(A, B)。
始终在本地缓存或保存高分。这样,即使启用了 Game Center 的用户也可以在离线时查看他们的分数,并在重新连接时提交。您可以为离线分数创建自己的 UI,并添加一个指示符,表明给定分数已提交到 Game Center。然后,提供一种查看 Game Center 分数的方法。(您可以使用自定义视图控制器或标准视图控制器。)
我不知道在这种情况下是否有“最佳实践”,但我有一个游戏可以两者兼得,我最终做了以下事情:
现在,我开发这款游戏的时候,GC是全新的,很多用户都没有,所以本地高分似乎是一种要求。如果我今天开发它,我可能会完全跳过本地高分。如果你没有GC,你就不会得到高分,期间。
但是请注意,我是在专门谈论 GC 被禁用。如果用户已登录 GC,但它不可用(例如,没有网络连接),您绝对应该将任何获得的高分排队,以便稍后在网络再次可用时将它们发送给 GC。