Skip to main content
1 人以上のローカル ユーザーのマッチメイキング チケットを作成します。

構文

パラメーター

handle   PFMultiplayerHandle PFMultiplayer API インスタンスのハンドルです。 localUserCount   uint32_t チケットに含めるローカル ユーザーの数です。 localUsers   PFEntityKey*
サイズ localUserCount の入力配列
チケットに含めるローカル ユーザーの配列です。 localUserAttributes   char* const*
サイズ localUserCount の入力配列
ローカル ユーザー属性文字列の配列です。ローカル ユーザーごとに 1 つの属性文字列を指定する必要があります。各属性文字列は、空の文字列またはシリアル化された JSON オブジェクトのいずれかである必要があります。例: {"player_color":"blue","player_role":"tank"} configuration   PFMatchmakingTicketConfiguration* チケットの構成です。 asyncContext   void*
省略可能
この呼び出しに完了状態の変更を関連付けるために使用できる、オプションでアプリ定義のポインター サイズのコンテキスト値です。 ticket   PFMatchmakingTicketHandle*
ライブラリ割り当ての出力
結果として得られるチケット オブジェクトです。

戻り値

型: HRESULT 呼び出しが成功した場合は S_OK、それ以外の場合はエラー コード。エラー コードを人間が読める形式で取得するには、PFMultiplayerGetErrorMessage() を使用します。

解説

ライブラリは、チケット上で指定されたすべてのローカル ユーザーを自動的かつ非同期にマッチメイキング サービスへ送信します。チケットのステータスが変わるたびに PFMatchmakingTicketStatusChangedStateChange が提供されます。チケットのステータスは、PFMatchmakingTicketGetStatus() からいつでもクエリできます。チケットは最初に PFMatchmakingTicketStatus::Creating 状態から開始します。

チケットが完了すると、PFMatchmakingTicketStatusChangedStateChange が提供されます。この時点で、マッチが見つかったか、失敗によりチケットが停止したかのいずれかです。成功した場合、見つかったマッチは PFMatchmakingTicketGetMatch() からクエリできます。

指定されたユーザーに対して既にチケットが多すぎるためにチケット作成が失敗した場合、ライブラリは透過的にそれら未処理のチケットをキャンセルし、その後チケット作成を再試行します。

configuration パラメーターの membersToMatchWith フィールドで指定されたすべてのリモート ユーザーが PFMultiplayerJoinMatchmakingTicketFromId() を介してチケットに参加するまで、マッチは見つかりません。

要件

ヘッダー: PFMatchmaking.h

関連項目

PFMatchmaking のメンバー
最終更新日 2026年8月13日