3

我目前正在编写一个很大程度上基于游戏中心参与度的游戏。我想实现游戏内挑战,但问题是我需要为每个发出的挑战提供某种唯一标识符,以便我可以在服务器上跟踪挑战。

我试图通过具有以下字段的GKChallenge对象来实现这一点:

  • 发行日期
  • 发行PlayerID
  • 接收玩家ID
  • 信息
  • 状态
  • 完成日期

问题是这里唯一可用的(就我而言)唯一字段是 issueDate,但我无法在 issueChallenge 方法中检索 issueDate。

那么问题来了:是否可以为游戏中心挑战生成任何类型的唯一 ID?如果没有,是否还有其他应对挑战的解决方法?

4

1 回答 1

2

您只能通过游戏中心发出 GKScoreChallenges 和 GKAchievementChallenges。而且我不明白您为什么要在服务器上跟踪它们。游戏中心处理挑战,您可以使用loadReceivedChallengesWithCompletionHandler.

GKScoreChallengeGKScore一个唯一的字段(uint64_t 上下文),允许游戏存储和检索与分数相关的附加数据。

如果您不想使用这些游戏中心功能并通过您自己的服务器处理挑战,您可以创建一个 GKChallenge 子类并实现您自己的挑战逻辑。

于 2012-11-21T12:27:05.697 回答