Pular para o conteúdo principal
Cria um tíquete de matchmaking para um ou mais usuários locais.

Sintaxe

Parâmetros

handle   PFMultiplayerHandle O identificador da instância da API PFMultiplayer. localUserCount   uint32_t A contagem de usuários locais a serem incluídos no tíquete. localUsers   PFEntityKey*
matriz de entrada de tamanho localUserCount
A matriz de usuários locais a serem incluídos no tíquete. localUserAttributes   char* const*
matriz de entrada de tamanho localUserCount
A matriz de cadeias de caracteres de atributos dos usuários locais. Deve haver uma cadeia de caracteres de atributo para cada usuário local. Cada cadeia de caracteres de atributo deve ser uma cadeia de caracteres vazia ou um objeto JSON serializado. Por exemplo, {"player_color":"blue","player_role":"tank"}. configuration   PFMatchmakingTicketConfiguration* A configuração do tíquete. asyncContext   void*
opcional
Um valor de contexto opcional, definido pelo aplicativo e do tamanho de um ponteiro, que pode ser usado para associar a alteração de estado de conclusão a esta chamada. ticket   PFMatchmakingTicketHandle*
saída alocada pela biblioteca
O objeto de tíquete resultante.

Valor retornado

Tipo: HRESULT S_OK se a chamada tiver êxito ou um código de erro caso contrário. A forma legível do código de erro pode ser obtida por meio de PFMultiplayerGetErrorMessage().

Comentários

A biblioteca envia automática e assincronamente todos os usuários locais especificados em um tíquete ao serviço de matchmaking. Sempre que o status do tíquete muda, uma PFMatchmakingTicketStatusChangedStateChange é fornecida. O status do tíquete pode ser consultado a qualquer momento por meio de PFMatchmakingTicketGetStatus(). O tíquete começa imediatamente no estado PFMatchmakingTicketStatus::Creating.

Quando o tíquete é concluído, uma PFMatchmakingTicketStatusChangedStateChange é fornecida. Nesse ponto, uma partida foi encontrada ou o tíquete parou devido a uma falha. Em caso de êxito, a partida encontrada pode ser consultada por meio de PFMatchmakingTicketGetMatch().

Se a criação do tíquete falhar porque já existem tíquetes demais para os usuários especificados, a biblioteca cancelará de forma transparente esses tíquetes pendentes e tentará criar o tíquete novamente.

Uma partida não pode ser encontrada até que todos os usuários remotos especificados no campo membersToMatchWith do parâmetro configuration ingressem no tíquete por meio de PFMultiplayerJoinMatchmakingTicketFromId().

Requisitos

Cabeçalho: PFMatchmaking.h

Confira também

Membros do PFMatchmaking
Última modificação em 8 de outubro de 2026