2013-04-08 100 views
0

是否有可能在Game Center成就中实现“收集”成就?游戏中心成就中的收藏

假设你设计了一个游戏,玩家可以选择很多宝石。宝石有十种不同的类型,有些宝石比其他宝石稀有。只有当你拿起所有十种类型的宝石中的至少一种时,“收集者”的成就将被100%完成/解锁。

+0

是的 - 应该可以的。我不是GameCentre专家,但是从记忆来看,取决于您(开发人员)跟踪用户的活动并在完成时奖励成就。 – 2013-04-08 10:39:13

回答

0

游戏中心没有这样的功能(在这一点上,谁知道未来)。

0

是的,这是可能的。您可以使用percentComplete属性GKAchievement对象。将用户收集的项目存储在某个地方(即NSUserDefaults),并相应报告百分比。

+0

问题是如果用户使用多个设备。由于类型信息存储在单个设备上,因此无法跟踪一般进度。我必须将这些信息存储在游戏中心,看起来它并不是为此而设计的(除非可能采取一些解决方法,比如使用percentComplete中的一些位来存储类型信息,而其他的可以存储pct complete。游戏中心的%显示会被搞乱)。看来GC只是为“收集10颗星星”之类的东西而设计的。我猜想用iCloud可以解决这个问题,但这次我不会去那里。 – Jonny 2013-04-09 02:29:59

+0

在使用排行榜时,GKScore对象具有与分数相关的任意数据的上下文成员。一个类似的功能将是方便的成就... – Jonny 2013-04-09 02:36:46

+0

这是真的,你将无法知道哪些项目已收集。您可以使用iCloud或为每个项目创建单独的成就。 – Adam 2013-04-09 10:37:58