次の方法で共有


PFMultiplayerJoinMatchmakingTicketFromId

チケット ID とキュー名を使用して、1 人以上のローカル ユーザーをマッチメイキング チケットに参加させます。

構文

HRESULT PFMultiplayerJoinMatchmakingTicketFromId(  
    PFMultiplayerHandle handle,  
    uint32_t localUserCount,  
    const PFEntityKey* localUsers,  
    const char* localUserAttributes,  
    const char* ticketId,  
    const char* queueName,  
    void* asyncContext,  
    PFMatchmakingTicketHandle* ticket  
)  

パラメーター

handle PFMultiplayerHandle

PFMultiplayer API インスタンスのハンドル。

localUserCount uint32_t

チケットに参加するローカル ユーザーの数。

localUsers PFEntityKey*
サイズ localUserCount の入力配列

チケットに参加するローカル ユーザーの配列。

localUserAttributes char*
サイズ localUserCount の入力配列

ローカル ユーザー属性文字列の配列。 ローカル ユーザーごとに 1 つの属性文字列が必要です。 各属性文字列は、空の文字列またはシリアル化された JSON オブジェクトである必要があります。 たとえば、{"player_color":"blue","player_role":"tank"} などです。

ticketId char*
が null で終わる

参加するチケットのID。

queueName char*
が null で終わる

チケットが属するキュー。

asyncContext void*
オプション

完了状態の変更をこの呼び出しに関連付けるために使用できる、オプションの、アプリによって定義されたポインター サイズのコンテキスト値。

ticket PFMatchmakingTicketHandle*
ライブラリに割り当てられた出力

結果のチケット オブジェクト。

戻り値

型: HRESULT

呼び出しが成功した場合は S_OK、それ以外の場合はエラー コードになります。 人間が読める形式のエラー コードは、PartyManager::GetErrorMessage() を介して取得できます。

解説

ライブラリは自動的かつ非同期的に、指定されたすべてのローカル ユーザーをマッチメイキング サービスのチケットに参加するように送信します。 チケットの状態が変更されるたびに、PFMatchmakingTicketStatusChangedStateChange が提供されます。 チケットの状態は、PFMatchmakingTicketGetStatus() を介していつでも照会できます。 チケットは直ちに PFMatchmakingTicketStatus::Joining 状態で開始されます。

チケットが完了すると、PFMatchmakingTicketStatusChangedStateChange が提供されます。 その時点で、一致が見つかったか、失敗のためにチケットが停止しました。 成功した場合、見つかった一致は PFMatchmakingTicketGetMatch() を介して照会できます。

指定されたユーザーのチケットが既に多すぎるためにチケットの作成が失敗した場合、それらの未処理のチケットは透過的に取り消され、チケットの作成が再試行されます。

要件

ヘッダー: PFMatchmaking.h

関連項目

PFMatchmaking メンバー