問題タブ [gkturnbasedmatch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - player(_:wantsToQuitMatch:) はいつ呼び出されますか?
Game Center を使用して初めてターン制ゲームを実装していますが、誰が から通知を受け取るのかわかりません
player(_:wantsToQuitMatch:)
。
(ゲーム内の何らかの方法で) 終了しようとしている現在のプレイヤーは、この通知を受け取りますか? 現在のプレーヤーが終了したときに、他のプレーヤーは通知を受け取りますか? 現在のプレイヤーが Game Center 内で終了 (ゲームを削除) するとどうなりますか?
自分の番になったときに Game Center でゲームを削除しようとしましたが、まだゲームに参加しているプレイヤーに対してメソッドがトリガーされません。そのメソッドをトリガーできません。
ios - GKLocalPlayerListener の receivedTurnEventFor マッチを使用する場合、ターン イベントがマッチメイキングの結果であるかどうかを判断する方法はありますか?
iOS 9 では、Applepublic func turnBasedMatchmakerViewController(_ viewController: GKTurnBasedMatchmakerViewController, didFind match: GKTurnBasedMatch)
はGKTurnBasedMatchmakerViewControllerDelegate
.
Apple の指示は、 のfunc player(_ player: GKPlayer, receivedTurnEventFor match: GKTurnBasedMatch, didBecomeActive: Bool)
方法を使用することですGKLocalPlayerListener
。
only を使用receivedTurnEventFor match
すると、次のシナリオが発生します。
- ユーザーがタップ
+
すると、 が表示されますGKTurnBasedMatchmakerViewController
。 - ユーザーがタップする
Play Now
と、Game Center が一致を検索します。 - Game Center は空のマッチ (新しいマッチ) を返す
matchData
か、進行中のマッチにユーザーを配置します — そして、ゲームは を通じてこれを通知されreceivedTurnEventFor match
ます。
( を使用して) 新しい一致が作成されたかどうかを判断するのは簡単ですがmatchData
、すべてのイベントが を通過するときに一致が見つかったのか、一致が更新されたのかを判断する方法はないようreceivedTurnEventFor match
です。
私の質問はこれです:
GKLocalPlayerListener
のメソッドを使用receivedTurnEventFor match
する場合、ターン イベントがマッチメイキングの結果であるかどうかを判断する方法はありますか?
ios - gamecenter bot 5005 NO SUCH PLAYER ID
プレイヤーがゲーム センターで特定の「マシン ユーザー アカウント」を参照するターンベースのマッチを作成することは可能ですか?
私はターン制のゲームを作成しており、エンド ユーザーがマシンと対戦できるようにしたいと考えています。そのため、自分のマシン用にゲーム センター アカウントを作成しました。
私の GKTurnBasedMatch には、GKTurnBasedParticipant があります。
すべての参加者を反復処理すると、マシンのプレイヤー ID は次のようになります。
また、ライブ アカウントとサンドボックス アカウントのメール アドレスを入力してみました: AppEnemy1Sand@gmail.com と AppEnemy1@gmail.com
私はシミュレーターで実行しています
ただし、参加者が私のマシンである場合、一致を開始するように要求すると、
}
エラーは次のとおりです。
ios - プレーヤーが進行中のマッチを GKTurnBasedMatchmakerViewController から「削除」したときに通知を受け取る方法
デフォルトを使用していますGKTurnBasedMatchmakerViewController
。プレーヤーは、進行中の試合を「削除」することができます。それには、試合セルを左にスライドさせてから、赤い「削除」ボタンをタップします。ただし、これは、最初のプレイヤーがマッチを削除 (および終了) したことを他のプレイヤーに通知しません。もう 1 つは、別のプレイヤーが試合に参加してターンを行うのを待ち続けます。しかし、これは私のゲームの論理に反しています。いずれかのプレイヤーが試合を終了または削除したら、すぐに試合を終了したいと考えています。matchOutcome
マッチを削除したいプレーヤーのために、何らかの種類のコールバックまたはセットを受け取る方法はありますか? 手伝ってくれてありがとう。