3

私は現在、ゲームセンターのエンゲージメントに大きく基づいたゲームを書いています。ゲーム内チャレンジを実装したいのですが、サーバー上でチャレンジを追跡できるように、発行されたチャレンジごとに何らかの一意の識別子が必要です。

フィールドを持つGKChallengeオブジェクトを介してこれを実装しようとしました。

  • 発行日
  • 発行PlayerID
  • 受信PlayerID
  • メッセージ
  • 完了日

問題は、ここで使用できる (私の場合) 一意のフィールドは issueDate だけですが、issueChallenge メソッドで issueDate を取得する方法がないことです。

質問:ゲーム センターのチャレンジ用に一意の ID を生成することは可能ですか? そうでない場合、課題に対する他の回避策はありますか?

4

1 に答える 1

2

GKScoreChallenge と GKAchievementChallenge は、ゲームセンターからのみ発行できます。そして、あなたがサーバー上でそれらを追跡したい理由がわかりません. Game Center がチャレンジを処理し、 を使用してローカル プレイヤーのチャレンジのリストを取得できますloadReceivedChallengesWithCompletionHandler

GKScoreChallengeには、GKScoreゲームがスコアに関連付けられた追加データを保存および取得できるようにする一意のフィールド (uint64_t コンテキスト) を持つ があります。

これらのゲーム センター機能を使用せず、独自のサーバーを介してチャレンジを処理する場合は、GKChallenge サブクラスを作成し、独自のチャレンジ ロジックを実装できます。

于 2012-11-21T12:27:05.697 に答える