gpg::TurnBasedMultiplayerManager

#include <turn_based_multiplayer_manager.h>

TurnBasedMatch オブジェクトの取得、変更、作成を行います。

概要

パブリック タイプ

MatchInboxUICallback typedef
std::function< void(const MatchInboxUIResponse &)>
ShowMatchInboxUI から MatchInboxUIResponse を受信できるコールバックを定義します。
MultiplayerStatusCallback typedef
std::function< void(MultiplayerStatus)>
MultiplayerStatus の受信に使用できるコールバックを定義します。
PlayerSelectUICallback typedef
std::function< void(const PlayerSelectUIResponse &)>
ShowPlayerSelectUI から PlayerSelectUIResponse を受信できるコールバックを定義します。
TurnBasedMatchCallback typedef
std::function< void(const TurnBasedMatchResponse &)>
ターン制マルチプレイヤー オペレーションのいずれかから TurnBasedMatchResponse を受信するために使用できるコールバックを定義します。
TurnBasedMatchesCallback typedef
std::function< void(const TurnBasedMatchesResponse &)>
ターン制マルチプレイヤー オペレーションのいずれかから TurnBasedMatchesResponse を受信できるコールバックを定義します。

公開静的属性

kAutomatchingParticipant
「次の参加者」を受け取るメソッドに渡すことができる参加者。

パブリック関数

AcceptInvitation(const MultiplayerInvitation & invitation, TurnBasedMatchCallback callback)
void
MultiplayerInvitation を非同期で受け入れ、TurnBasedMatchCallback を介して結果を返します。
AcceptInvitationBlocking(Timeout timeout, const MultiplayerInvitation & invitation)
AcceptInvitation のブロック バージョン。
AcceptInvitationBlocking(const MultiplayerInvitation & invitation)
デフォルトのタイムアウトが 10 年になる AcceptInvitationBlocking のオーバーロード。
CancelMatch(const TurnBasedMatch & match, MultiplayerStatusCallback callback)
void
マッチを非同期的にキャンセルします。
CancelMatchBlocking(Timeout timeout, const TurnBasedMatch & match)
CancelMatch のブロック バージョン。
CancelMatchBlocking(const TurnBasedMatch & match)
デフォルトのタイムアウトが 10 年になる CancelMatch のオーバーロード。
ConfirmPendingCompletion(const TurnBasedMatch & match, TurnBasedMatchCallback callback)
void
終了し、ローカルでの完了が保留中の試合の結果を確認します。
ConfirmPendingCompletionBlocking(Timeout timeout, const TurnBasedMatch & match)
ConfirmPendingCompletion のブロック バージョン。
ConfirmPendingCompletionBlocking(const TurnBasedMatch & match)
デフォルトのタイムアウトが 10 年になる ConfirmPendingCompletionBlocking のオーバーロード。
CreateTurnBasedMatch(const gpg::TurnBasedMatchConfig & config, TurnBasedMatchCallback callback)
void
指定された TurnBasedMatchConfig を使用して TurnBasedMatch を非同期で作成します。
CreateTurnBasedMatchBlocking(Timeout timeout, const gpg::TurnBasedMatchConfig & config)
CreateTurnBasedMatch のブロック バージョン。
CreateTurnBasedMatchBlocking(const gpg::TurnBasedMatchConfig & config)
デフォルトのタイムアウトが 10 年になる CreateTurnBasedMatchBlocking のオーバーロード。
DeclineInvitation(const MultiplayerInvitation & invitation)
void
MultiplayerInvitationTurnBasedMatch に拒否します。
DismissInvitation(const MultiplayerInvitation & invitation)
void
MultiplayerInvitationTurnBasedMatch に閉じます。
DismissMatch(const TurnBasedMatch & match)
void
TurnBasedMatch を閉じます。
FetchMatch(const std::string & match_id, TurnBasedMatchCallback callback)
void
ID を指定して特定の一致を非同期でフェッチします。
FetchMatchBlocking(Timeout timeout, const std::string & match_id)
FetchMatch のブロック バージョン。
FetchMatchBlocking(const std::string & match_id)
デフォルトのタイムアウトが 10 年になる FetchMatchBlocking のオーバーロード。
FetchMatches(TurnBasedMatchesCallback callback)
void
現在のプレーヤーの TurnBasedMatch オブジェクトと Invitation オブジェクトを非同期で取得します。
FetchMatchesBlocking(Timeout timeout)
FetchMatches のブロック バージョン。
FetchMatchesBlocking()
デフォルトのタイムアウトが 10 年になる FetchMatchesBlocking のオーバーロード。
FinishMatchDuringMyTurn(const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results, TurnBasedMatchCallback callback)
void
指定されたマッチを非同期で終了します。
FinishMatchDuringMyTurnBlocking(Timeout timeout, const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results)
FinishMatchDuringMyTurn のブロック バージョン。
FinishMatchDuringMyTurnBlocking(const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results)
FinishMatchDuringMyTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。
LeaveMatchDuringMyTurn(const TurnBasedMatch & match, const MultiplayerParticipant & next_participant, MultiplayerStatusCallback callback)
void
ローカル参加者のターン中に、非同期で試合を終了します。
LeaveMatchDuringMyTurnBlocking(Timeout timeout, const TurnBasedMatch & match, const MultiplayerParticipant & next_participant)
LeaveMatchDuringMyTurn のブロック バージョン。
LeaveMatchDuringMyTurnBlocking(const TurnBasedMatch & match, const MultiplayerParticipant & next_participant)
LeaveMatchDuringMyTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。
LeaveMatchDuringTheirTurn(const TurnBasedMatch & match, MultiplayerStatusCallback callback)
void
他の参加者のターン中に非同期で試合を終了します。
LeaveMatchDuringTheirTurnBlocking(Timeout timeout, const TurnBasedMatch & match)
LeaveMatchDuringTheirTurn のブロック バージョン。
LeaveMatchDuringTheirTurnBlocking(const TurnBasedMatch & match)
LeaveMatchDuringTheirTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。
Rematch(const TurnBasedMatch & match, TurnBasedMatchCallback callback)
void
ステータスが MatchStatus::COMPLETED の試合を再マッチします。
RematchBlocking(Timeout timeout, const TurnBasedMatch & match)
再戦のブロック バージョン。
RematchBlocking(const TurnBasedMatch & match)
デフォルトのタイムアウトが 10 年である RematchBlocking のオーバーロード。
ShowMatchInboxUI(MatchInboxUICallback callback)
void
マッチの受信トレイ UI を非同期で表示し、プレーヤーがマッチまたは招待を選択できるようにします。
ShowMatchInboxUIBlocking(Timeout timeout)
ShowMatchInboxUI のブロック バージョン。
ShowMatchInboxUIBlocking()
デフォルトのタイムアウトが 10 年になる ShowMatchInboxUIBlocking のオーバーロード。
ShowPlayerSelectUI(uint32_t minimum_players, uint32_t maximum_players, bool allow_automatch, PlayerSelectUICallback callback)
void
プレーヤー選択 UI を非同期で表示し、プレーヤーが試合をプレイする他のプレーヤーを選択できるようにします。
ShowPlayerSelectUIBlocking(Timeout timeout, uint32_t minimum_players, uint32_t maximum_players, bool allow_automatch)
ShowPlayerSelectUI のブロック バージョン。
ShowPlayerSelectUIBlocking(uint32_t minimum_players, uint32_t maximum_players, bool allow_automatch)
デフォルトのタイムアウトが 10 年になる ShowPlayerSelectUIBlocking のオーバーロード。
SynchronizeData()
void
TBMP の一致データをサーバーと強制的に同期します。
TakeMyTurn(const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results, const MultiplayerParticipant & next_participant, TurnBasedMatchCallback callback)
void
ローカル参加者のターンを非同期で取得します。
TakeMyTurnBlocking(Timeout timeout, const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results, const MultiplayerParticipant & next_participant)
TakeMyTurn のブロック バージョン。
TakeMyTurnBlocking(const TurnBasedMatch & match, std::vector< uint8_t > match_data, const ParticipantResults & results, const MultiplayerParticipant & next_participant)
デフォルトのタイムアウトが 10 年になる TakeMyTurnBlocking のオーバーロード。

構造体

gpg::TurnBasedMultiplayerManager::MatchInboxUIResponse

ShowMatchInboxUI オペレーションの DataResponseStatus

gpg::TurnBasedMultiplayerManager::PlayerSelectUIResponse

ShowPlayerSelectUI オペレーションの DataResponseStatus

gpg::TurnBasedMultiplayerManager::TurnBasedMatchResponse

DataResponseStatus は特定の TurnBasedMatch 用です。

gpg::TurnBasedMultiplayerManager::TurnBasedMatchesResponse

DataResponseStatus: ターンベースの試合招待

パブリック タイプ

MatchInboxUICallback

std::function< void(const MatchInboxUIResponse &)> MatchInboxUICallback

ShowMatchInboxUI から MatchInboxUIResponse を受信できるコールバックを定義します。

MultiplayerStatusCallback

std::function< void(MultiplayerStatus)> MultiplayerStatusCallback

MultiplayerStatus の受信に使用できるコールバックを定義します。

LeaveMatch 関数と CancelMatch 関数で使用されます。

PlayerSelectUICallback

std::function< void(const PlayerSelectUIResponse &)> PlayerSelectUICallback

ShowPlayerSelectUI から PlayerSelectUIResponse を受信できるコールバックを定義します。

TurnBasedMatchCallback

std::function< void(const TurnBasedMatchResponse &)> TurnBasedMatchCallback

ターン制マルチプレイヤー オペレーションのいずれかから TurnBasedMatchResponse を受信するために使用できるコールバックを定義します。

TurnBasedMatchesCallback

std::function< void(const TurnBasedMatchesResponse &)> TurnBasedMatchesCallback

ターン制マルチプレイヤー オペレーションのいずれかから TurnBasedMatchesResponse を受信できるコールバックを定義します。

公開静的属性

kAutomatchingParticipant

const MultiplayerParticipant kAutomatchingParticipant

「次の参加者」を受け取るメソッドに渡すことができる参加者。

これにより、自動マッチングによって次の参加者が選択されます。kAutomatchingParticipant を関数に渡すことは、関連するマッチの TurnBasedMatch::AutomatchingSlotsAvailable が 0 より大きい場合にのみ有効です。

パブリック関数

AcceptInvitation

void AcceptInvitation(
  const MultiplayerInvitation & invitation,
  TurnBasedMatchCallback callback
)

MultiplayerInvitation を非同期で受け入れ、TurnBasedMatchCallback を介して結果を返します。

オペレーションが成功すると、コールバック経由で返された TurnBasedMatchTurnBasedMatchState::MY_TURN 状態になります。

AcceptInvitationBlocking

TurnBasedMatchResponse AcceptInvitationBlocking(
  Timeout timeout,
  const MultiplayerInvitation & invitation
)

AcceptInvitation のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

AcceptInvitationBlocking

TurnBasedMatchResponse AcceptInvitationBlocking(
  const MultiplayerInvitation & invitation
)

デフォルトのタイムアウトが 10 年になる AcceptInvitationBlocking のオーバーロード。

CancelMatch

void CancelMatch(
  const TurnBasedMatch & match,
  MultiplayerStatusCallback callback
)

マッチを非同期的にキャンセルします。

MultiplayerStatusCallback を介して返されるステータスは、オペレーションが成功したかどうかを示します。この関数を使用できるようにするには、試合のステータスが INVITED、THEIR_TURN、MY_TURN である必要があります。

CancelMatchBlocking

MultiplayerStatus CancelMatchBlocking(
  Timeout timeout,
  const TurnBasedMatch & match
)

CancelMatch のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

CancelMatchBlocking

MultiplayerStatus CancelMatchBlocking(
  const TurnBasedMatch & match
)

デフォルトのタイムアウトが 10 年になる CancelMatch のオーバーロード。

ConfirmPendingCompletion

void ConfirmPendingCompletion(
  const TurnBasedMatch & match,
  TurnBasedMatchCallback callback
)

終了し、ローカルでの完了が保留中の試合の結果を確認します。

この関数は、TurnBasedMatch::Status()MatchStatus::PENDING_COMPLETION を返す場合にのみ呼び出すことができます。

詳細
パラメータ
match
完了を確認する一致。
callback
TurnBasedMatchResponse を受信するコールバック。

ConfirmPendingCompletionBlocking

TurnBasedMatchResponse ConfirmPendingCompletionBlocking(
  Timeout timeout,
  const TurnBasedMatch & match
)

ConfirmPendingCompletion のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

ConfirmPendingCompletionBlocking

TurnBasedMatchResponse ConfirmPendingCompletionBlocking(
  const TurnBasedMatch & match
)

デフォルトのタイムアウトが 10 年になる ConfirmPendingCompletionBlocking のオーバーロード。

CreateTurnBasedMatch

void CreateTurnBasedMatch(
  const gpg::TurnBasedMatchConfig & config,
  TurnBasedMatchCallback callback
)

指定された TurnBasedMatchConfig を使用して TurnBasedMatch を非同期で作成します。

作成が成功すると、この関数は指定された TurnBasedMatchCallback を介して TurnBasedMatch を返します。新しく作成された TurnBasedMatch は常に TurnBasedMatchState::MY_TURN 状態から開始します。

CreateTurnBasedMatchBlocking

TurnBasedMatchResponse CreateTurnBasedMatchBlocking(
  Timeout timeout,
  const gpg::TurnBasedMatchConfig & config
)

CreateTurnBasedMatch のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

CreateTurnBasedMatchBlocking

TurnBasedMatchResponse CreateTurnBasedMatchBlocking(
  const gpg::TurnBasedMatchConfig & config
)

デフォルトのタイムアウトが 10 年になる CreateTurnBasedMatchBlocking のオーバーロード。

DeclineInvitation

void DeclineInvitation(
  const MultiplayerInvitation & invitation
)

MultiplayerInvitationTurnBasedMatch に拒否します。

これにより、他の参加者の試合はキャンセルされ、ローカル プレーヤーのデバイスから試合が削除されます。

DismissInvitation

void DismissInvitation(
  const MultiplayerInvitation & invitation
)

MultiplayerInvitationTurnBasedMatch に閉じます。

これにより、他の参加者に対する TurnBasedMatch の表示状態は変更されませんが、ローカル プレーヤーのデバイスから TurnBasedMatch が削除されます。

DismissMatch

void DismissMatch(
  const TurnBasedMatch & match
)

TurnBasedMatch を閉じます。

これにより、他の参加者に対する TurnBasedMatch の表示状態は変更されませんが、ローカル プレーヤーのデバイスから TurnBasedMatch が削除されます。

FetchMatch

void FetchMatch(
  const std::string & match_id,
  TurnBasedMatchCallback callback
)

ID を指定して特定の一致を非同期でフェッチします。

このオペレーションの結果は TurnBasedMatchCallback を介して返されます。

FetchMatchBlocking

TurnBasedMatchResponse FetchMatchBlocking(
  Timeout timeout,
  const std::string & match_id
)

FetchMatch のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

FetchMatchBlocking

TurnBasedMatchResponse FetchMatchBlocking(
  const std::string & match_id
)

デフォルトのタイムアウトが 10 年になる FetchMatchBlocking のオーバーロード。

FetchMatches

void FetchMatches(
  TurnBasedMatchesCallback callback
)

現在のプレーヤーの TurnBasedMatch オブジェクトと Invitation オブジェクトを非同期で取得します。

アクティブな一致と、完了した一致が 10 件まで返されます。

FetchMatchesBlocking

TurnBasedMatchesResponse FetchMatchesBlocking(
  Timeout timeout
)

FetchMatches のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

FetchMatchesBlocking

TurnBasedMatchesResponse FetchMatchesBlocking()

デフォルトのタイムアウトが 10 年になる FetchMatchesBlocking のオーバーロード。

FinishMatchDuringMyTurn

void FinishMatchDuringMyTurn(
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results,
  TurnBasedMatchCallback callback
)

指定されたマッチを非同期で終了します。

これは、試合の最終ターンで TakeMyTurn の代わりに使用できます。呼び出し元は、match_data の最終値と ParticipantResults の最終値のセットを指定できます。このオペレーションが完了すると、更新されたマッチが指定された TurnBasedMatchCallback. を介して返されます。この関数は、TurnBasedMatch::Status()MatchStatus::MY_TURN. を返す場合にのみ呼び出せます。

詳細
パラメータ
match
試合が終了する。
match_data
マッチの最終状態を表すデータの blob。
results
試合中の各選手の結果。これらの結果は、TakeTurn で以前に指定した結果と矛盾しないようにする必要があります。プレーヤーに異なる結果を設定しようとすると、ERROR_INVALID_RESULTS になります。
callback
TurnBasedMatchResponse を受信するコールバック。

FinishMatchDuringMyTurnBlocking

TurnBasedMatchResponse FinishMatchDuringMyTurnBlocking(
  Timeout timeout,
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results
)

FinishMatchDuringMyTurn のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

FinishMatchDuringMyTurnBlocking

TurnBasedMatchResponse FinishMatchDuringMyTurnBlocking(
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results
)

FinishMatchDuringMyTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。

LeaveMatchDuringMyTurn

void LeaveMatchDuringMyTurn(
  const TurnBasedMatch & match,
  const MultiplayerParticipant & next_participant,
  MultiplayerStatusCallback callback
)

ローカル参加者のターン中に、非同期で試合を終了します。

TurnBasedMatchCallback を介して返されるレスポンスには、ローカル プレーヤーが退出した後の試合のステータスが含まれます。退出により参加者が 2 人未満になった場合、試合はキャンセルされます。この関数を使用できるようにするには、match.Status()MatchStatus::MY_TURN を返す必要があります。

詳細
パラメータ
match
退出する試合。
next_participant
次の順番の参加者。TurnBasedMultiplayerManager::kAutomatchingParticipant を使用して、次の参加者を自動マッチングで選択するように指定できます。
callback
TurnBasedMatchResponse を受信するコールバック

LeaveMatchDuringMyTurnBlocking

MultiplayerStatus LeaveMatchDuringMyTurnBlocking(
  Timeout timeout,
  const TurnBasedMatch & match,
  const MultiplayerParticipant & next_participant
)

LeaveMatchDuringMyTurn のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

LeaveMatchDuringMyTurnBlocking

MultiplayerStatus LeaveMatchDuringMyTurnBlocking(
  const TurnBasedMatch & match,
  const MultiplayerParticipant & next_participant
)

LeaveMatchDuringMyTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。

LeaveMatchDuringTheirTurn

void LeaveMatchDuringTheirTurn(
  const TurnBasedMatch & match,
  MultiplayerStatusCallback callback
)

他の参加者のターン中に非同期で試合を終了します。

MultiplayerStatusCallback を介して返されるレスポンスには、ローカル プレーヤーが試合を正常に終了したかどうかが含まれます。退出により参加者が 2 人未満になった場合、試合はキャンセルされます。この関数を使用できるようにするには、match.Status()MatchStatus::THEIR_TURN を返す必要があります。

LeaveMatchDuringTheirTurnBlocking

MultiplayerStatus LeaveMatchDuringTheirTurnBlocking(
  Timeout timeout,
  const TurnBasedMatch & match
)

LeaveMatchDuringTheirTurn のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

LeaveMatchDuringTheirTurnBlocking

MultiplayerStatus LeaveMatchDuringTheirTurnBlocking(
  const TurnBasedMatch & match
)

LeaveMatchDuringTheirTurnBlocking のオーバーロード。デフォルトのタイムアウトは 10 年です。

再対戦

void Rematch(
  const TurnBasedMatch & match,
  TurnBasedMatchCallback callback
)

ステータスが MatchStatus::COMPLETED の試合を再マッチします。

再試合が可能な場合、TurnBasedMatchCallback は新しい試合を受け取ります。

詳細
パラメータ
match
再試合を行う試合。
callback
TurnBasedMatchResponse を受け取るコールバック。

RematchBlocking

TurnBasedMatchResponse RematchBlocking(
  Timeout timeout,
  const TurnBasedMatch & match
)

再戦のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

RematchBlocking

TurnBasedMatchResponse RematchBlocking(
  const TurnBasedMatch & match
)

デフォルトのタイムアウトが 10 年である RematchBlocking のオーバーロード。

ShowMatchInboxUI

void ShowMatchInboxUI(
  MatchInboxUICallback callback
)

非同期で試合の受信トレイ UI を表示し、プレーヤーが試合または招待を選択できるようにします。

完了すると、選択した一致または招待が MatchInboxUICallback を介して返されます。

ShowMatchInboxUIBlocking

MatchInboxUIResponse ShowMatchInboxUIBlocking(
  Timeout timeout
)

ShowMatchInboxUI のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

ShowMatchInboxUIBlocking

MatchInboxUIResponse ShowMatchInboxUIBlocking()

デフォルトのタイムアウトが 10 年になる ShowMatchInboxUIBlocking のオーバーロード。

ShowPlayerSelectUI

void ShowPlayerSelectUI(
  uint32_t minimum_players,
  uint32_t maximum_players,
  bool allow_automatch,
  PlayerSelectUICallback callback
)

プレーヤー選択 UI を非同期で表示し、プレーヤーが試合をプレイする他のプレーヤーを選択できるようにします。

完了すると、選択したプレーヤーが PlayerSelectUICallback を介して返されます。

ShowPlayerSelectUIBlocking

PlayerSelectUIResponse ShowPlayerSelectUIBlocking(
  Timeout timeout,
  uint32_t minimum_players,
  uint32_t maximum_players,
  bool allow_automatch
)

ShowPlayerSelectUI のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

ShowPlayerSelectUIBlocking

PlayerSelectUIResponse ShowPlayerSelectUIBlocking(
  uint32_t minimum_players,
  uint32_t maximum_players,
  bool allow_automatch
)

デフォルトのタイムアウトが 10 年になる ShowPlayerSelectUIBlocking のオーバーロード。

SynchronizeData

void SynchronizeData()

TBMP の一致データをサーバーと強制的に同期します。

新しいデータの受信により、OnTurnBasedMatchEventCallback または OnMultiplayerInvitationReceivedCallback がトリガーされます。

TakeMyTurn

void TakeMyTurn(
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results,
  const MultiplayerParticipant & next_participant,
  TurnBasedMatchCallback callback
)

ローカル参加者のターンを非同期で取得します。

参加者は、自分の番に match_data の新しい値と ParticipantResults のセットを指定できます。ターンが終了すると、更新されたマッチが TurnBasedMatchCallback を介して返されます。この関数は、TurnBasedMatch::Status()MatchStatus::MY_TURN の場合にのみ呼び出されます。

詳細
パラメータ
match
ターンが行われる試合。
match_data
次の参加者に送信するデータの blob。
results
試合の現在の既知の結果。なお、特定のプレーヤーの結果は 1 回のみ指定できます。プレーヤーに異なる結果を設定しようとすると、ERROR_INVALID_RESULTS になります。
next_participant
次の順番の参加者。TurnBasedMultiplayerManager::kAutomatchingParticipant を使用して、次の参加者を自動マッチングで選択するように指定できます。
callback
TurnBasedMatchResponse を受信するコールバック。

TakeMyTurnBlocking

TurnBasedMatchResponse TakeMyTurnBlocking(
  Timeout timeout,
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results,
  const MultiplayerParticipant & next_participant
)

TakeMyTurn のブロック バージョン。

呼び出し元がタイムアウトをミリ秒単位で指定できます。指定された時間が経過すると、関数は ERROR_TIMEOUT を返します。

TakeMyTurnBlocking

TurnBasedMatchResponse TakeMyTurnBlocking(
  const TurnBasedMatch & match,
  std::vector< uint8_t > match_data,
  const ParticipantResults & results,
  const MultiplayerParticipant & next_participant
)

デフォルトのタイムアウトが 10 年になる TakeMyTurnBlocking のオーバーロード。