gpg::RealTimeMultiplayerManager

#include <real_time_multiplayer_manager.h>

获取、修改、处理 RealTimeRoom 对象的消息,并创建 RealTimeRoom 对象。

摘要

公共类型

FetchInvitationsCallback typedef
std::function< void(const FetchInvitationsResponse &)>
定义一个回调,可用于从某个实时多人游戏操作接收 WaitingRoomUIResponse
LeaveRoomCallback typedef
std::function< void(const ResponseStatus &)>
定义可以从 LeaveRoom 接收 ResponseStatus 的回调。
PlayerSelectUICallback typedef
std::function< void(const PlayerSelectUIResponse &)>
定义可以从 ShowPlayerSelectUI 接收 PlayerSelectUIResponse 的回调。
PlayerSelectUIResponse typedef
DataResponseStatus,用于 ShowPlayerSelectUI 操作。
RealTimeRoomCallback typedef
std::function< void(const RealTimeRoomResponse &)>
定义一个回调,可用于从某个回合制多人游戏操作接收 RealTimeRoomResponse 结构体。
RoomInboxUICallback typedef
std::function< void(const RoomInboxUIResponse &)>
定义可以从 ShowRoomInboxUI 接收 RoomInboxUIResponse 的回调。
SendReliableMessageCallback typedef
std::function< void(const MultiplayerStatus &)>
定义可以从 SendReliableMessage 接收 ResponseStatus 的回调。
WaitingRoomUICallback typedef
std::function< void(const WaitingRoomUIResponse &)>
定义一个回调,可用于从某个实时多人游戏操作接收 WaitingRoomUIResponse

公共函数

AcceptInvitation(const MultiplayerInvitation & invitation, IRealTimeEventListener *listener, RealTimeRoomCallback callback)
void
异步接受 MultiplayerInvitation,并通过 RealTimeRoomCallback 返回结果。
AcceptInvitation(const MultiplayerInvitation & invitation, RealTimeEventListenerHelper helper, RealTimeRoomCallback callback)
void
异步接受 MultiplayerInvitation,并通过 RealTimeRoomCallback 返回结果。
AcceptInvitationBlocking(Timeout timeout, const MultiplayerInvitation & invitation, IRealTimeEventListener *listener)
AcceptInvitation 的屏蔽版本。
AcceptInvitationBlocking(const MultiplayerInvitation & invitation, IRealTimeEventListener *listener)
AcceptInvitationBlocking 过载,它使用默认超时时间(10 年)。
AcceptInvitationBlocking(Timeout timeout, const MultiplayerInvitation & invitation, RealTimeEventListenerHelper helper)
AcceptInvitation 的屏蔽版本。
AcceptInvitationBlocking(const MultiplayerInvitation & invitation, RealTimeEventListenerHelper helper)
AcceptInvitationBlocking 过载,它使用默认超时时间(10 年)。
CreateRealTimeRoom(const gpg::RealTimeRoomConfig & config, IRealTimeEventListener *listener, RealTimeRoomCallback callback)
void
使用提供的 RealTimeRoomConfig 类异步创建 RealTimeRoom 对象。
CreateRealTimeRoom(const gpg::RealTimeRoomConfig & config, RealTimeEventListenerHelper helper, RealTimeRoomCallback callback)
void
使用提供的 RealTimeRoomConfig 类异步创建 RealTimeRoom 对象。
CreateRealTimeRoomBlocking(Timeout timeout, const RealTimeRoomConfig & config, IRealTimeEventListener *listener)
CreateRealTimeRoom 的阻塞版本。
CreateRealTimeRoomBlocking(const RealTimeRoomConfig & config, IRealTimeEventListener *listener)
CreateRealTimeRoomBlocking 的重载,使用默认的 10 年超时时间。
CreateRealTimeRoomBlocking(Timeout timeout, const RealTimeRoomConfig & config, RealTimeEventListenerHelper helper)
CreateRealTimeRoom 的阻塞版本。
CreateRealTimeRoomBlocking(const RealTimeRoomConfig & config, RealTimeEventListenerHelper helper)
CreateRealTimeRoomBlocking 的重载,使用默认的 10 年超时时间。
DeclineInvitation(const MultiplayerInvitation & invitation)
void
拒绝向 RealTimeRoom 发出的 MultiplayerInvitation
DismissInvitation(const MultiplayerInvitation & invitation)
void
FetchInvitations(FetchInvitationsCallback callback)
void
获取实时聊天室的任何 MultiplayerInvitation
FetchInvitationsBlocking(Timeout timeout)
FetchInvitations 的屏蔽版本。
FetchInvitationsBlocking()
过载 FetchInvitationsBlocking,默认超时为 10 年。
LeaveRoom(const RealTimeRoom & room, LeaveRoomCallback callback)
void
退出 RealTimeRoom
LeaveRoomBlocking(Timeout timeout, const RealTimeRoom & room)
LeaveRoom 的阻塞版本。
LeaveRoomBlocking(const RealTimeRoom & room)
LeaveRoomBlocking 的过载,默认超时时间为 10 年。
SendReliableMessage(const RealTimeRoom & room, const MultiplayerParticipant & participant, std::vector< uint8_t > data, SendReliableMessageCallback callback)
void
向指定的 MultiplayerParticipant 发送消息。
SendReliableMessageBlocking(Timeout timeout, const RealTimeRoom & room, const MultiplayerParticipant & participant, std::vector< uint8_t > data)
SendReliableMessage 的阻塞版本。
SendReliableMessageBlocking(const RealTimeRoom & room, const MultiplayerParticipant & participant, std::vector< uint8_t > data)
SendReliableMessageBlocking 的过载,默认超时时间为 10 年。
SendUnreliableMessage(const RealTimeRoom & room, const std::vector< MultiplayerParticipant > & participants, std::vector< uint8_t > data)
void
向指定的 MultiplayerParticipant 发送消息。
SendUnreliableMessageToOthers(const RealTimeRoom & room, std::vector< uint8_t > data)
void
向除当前用户以外的所有参与者发送消息。
ShowPlayerSelectUI(uint32_t minimum_players, uint32_t maximum_players, bool allow_automatch, PlayerSelectUICallback callback)
void
异步显示玩家选择界面,允许玩家选择其他玩家加入房间。
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)
ShowPlayerSelectUIBlocking 的过载,使用默认的 10 年超时时间。
ShowRoomInboxUI(RoomInboxUICallback callback)
void
异步显示会议室收件箱界面,允许玩家选择多人游戏邀请。
ShowRoomInboxUIBlocking(Timeout timeout)
ShowRoomInboxUI 的屏蔽版本。
ShowRoomInboxUIBlocking()
ShowRoomInboxUIBlocking 的过载,它使用默认的超时期限为 10 年。
ShowWaitingRoomUI(const RealTimeRoom & room, uint32_t min_participants_to_start, WaitingRoomUICallback callback)
void
显示等候室界面,其中显示了多人加入此会议室的状态。
ShowWaitingRoomUIBlocking(Timeout timeout, const RealTimeRoom & room, uint32_t min_participants_to_start)
ShowWaitingRoomUI 的屏蔽版本。
ShowWaitingRoomUIBlocking(const RealTimeRoom & room, uint32_t min_participants_to_start)
ShowWaitingRoomUIBlocking 的过载,默认超时时长为 10 年。

结构体

gpg::RealTimeMultiplayerManager::FetchInvitationsResponse

DataResponseStatus,用于 FetchInvitations 操作。

gpg::RealTimeMultiplayerManager::RealTimeRoomResponse

DataResponseStatus 用于特定的 RealTimeRoom 对象。

gpg::RealTimeMultiplayerManager::RoomInboxUIResponse

DataResponseStatus,用于 ShowRoomInboxUI 操作。

gpg::RealTimeMultiplayerManager::WaitingRoomUIResponse

DataResponseStatus,用于 ShowWaitingRoomUI 操作。

公共类型

FetchInvitationsCallback

std::function< void(const FetchInvitationsResponse &)> FetchInvitationsCallback

定义一个回调,可用于从某个实时多人游戏操作接收 WaitingRoomUIResponse

LeaveRoomCallback

std::function< void(const ResponseStatus &)> LeaveRoomCallback

定义可以从 LeaveRoom 接收 ResponseStatus 的回调。

PlayerSelectUICallback

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

定义可以从 ShowPlayerSelectUI 接收 PlayerSelectUIResponse 的回调。

PlayerSelectUIResponse

TurnBasedMultiplayerManager::PlayerSelectUIResponse PlayerSelectUIResponse

DataResponseStatus,用于 ShowPlayerSelectUI 操作。

此内容与回合制多人游戏共享。

RealTimeRoomCallback

std::function< void(const RealTimeRoomResponse &)> RealTimeRoomCallback

定义一个回调,可用于从某个回合制多人游戏操作接收 RealTimeRoomResponse 结构体。

RoomInboxUICallback

std::function< void(const RoomInboxUIResponse &)> RoomInboxUICallback

定义可以从 ShowRoomInboxUI 接收 RoomInboxUIResponse 的回调。

SendReliableMessageCallback

std::function< void(const MultiplayerStatus &)> SendReliableMessageCallback

定义可以从 SendReliableMessage 接收 ResponseStatus 的回调。

WaitingRoomUICallback

std::function< void(const WaitingRoomUIResponse &)> WaitingRoomUICallback

定义一个回调,可用于从某个实时多人游戏操作接收 WaitingRoomUIResponse

公共函数

AcceptInvitation

void AcceptInvitation(
  const MultiplayerInvitation & invitation,
  IRealTimeEventListener *listener,
  RealTimeRoomCallback callback
)

异步接受 MultiplayerInvitation,并通过 RealTimeRoomCallback 返回结果。

AcceptInvitation

void AcceptInvitation(
  const MultiplayerInvitation & invitation,
  RealTimeEventListenerHelper helper,
  RealTimeRoomCallback callback
)

异步接受 MultiplayerInvitation,并通过 RealTimeRoomCallback 返回结果。

AcceptInvitationBlocking

RealTimeRoomResponse AcceptInvitationBlocking(
  Timeout timeout,
  const MultiplayerInvitation & invitation,
  IRealTimeEventListener *listener
)

AcceptInvitation 的屏蔽版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

AcceptInvitationBlocking

RealTimeRoomResponse AcceptInvitationBlocking(
  const MultiplayerInvitation & invitation,
  IRealTimeEventListener *listener
)

AcceptInvitationBlocking 过载,它使用默认超时时间(10 年)。

AcceptInvitationBlocking

RealTimeRoomResponse AcceptInvitationBlocking(
  Timeout timeout,
  const MultiplayerInvitation & invitation,
  RealTimeEventListenerHelper helper
)

AcceptInvitation 的屏蔽版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

AcceptInvitationBlocking

RealTimeRoomResponse AcceptInvitationBlocking(
  const MultiplayerInvitation & invitation,
  RealTimeEventListenerHelper helper
)

AcceptInvitationBlocking 过载,它使用默认超时时间(10 年)。

CreateRealTimeRoom

void CreateRealTimeRoom(
  const gpg::RealTimeRoomConfig & config,
  IRealTimeEventListener *listener,
  RealTimeRoomCallback callback
)

使用提供的 RealTimeRoomConfig 类异步创建 RealTimeRoom 对象。

如果创建成功,此函数会通过提供的 RealTimeRoomCallback 返回 RealTimeRoom 对象。

CreateRealTimeRoom

void CreateRealTimeRoom(
  const gpg::RealTimeRoomConfig & config,
  RealTimeEventListenerHelper helper,
  RealTimeRoomCallback callback
)

使用提供的 RealTimeRoomConfig 类异步创建 RealTimeRoom 对象。

如果创建成功,此函数会通过提供的 RealTimeRoomCallback 返回 RealTimeRoom 对象。

CreateRealTimeRoomBlocking

RealTimeRoomResponse CreateRealTimeRoomBlocking(
  Timeout timeout,
  const RealTimeRoomConfig & config,
  IRealTimeEventListener *listener
)

CreateRealTimeRoom 的阻塞版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

CreateRealTimeRoomBlocking

RealTimeRoomResponse CreateRealTimeRoomBlocking(
  const RealTimeRoomConfig & config,
  IRealTimeEventListener *listener
)

CreateRealTimeRoomBlocking 的重载,使用默认的 10 年超时时间。

CreateRealTimeRoomBlocking

RealTimeRoomResponse CreateRealTimeRoomBlocking(
  Timeout timeout,
  const RealTimeRoomConfig & config,
  RealTimeEventListenerHelper helper
)

CreateRealTimeRoom 的阻塞版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

CreateRealTimeRoomBlocking

RealTimeRoomResponse CreateRealTimeRoomBlocking(
  const RealTimeRoomConfig & config,
  RealTimeEventListenerHelper helper
)

CreateRealTimeRoomBlocking 的重载,使用默认的 10 年超时时间。

DeclineInvitation

void DeclineInvitation(
  const MultiplayerInvitation & invitation
)

拒绝向 RealTimeRoom 发出的 MultiplayerInvitation

这样做会取消其他参与者的会议室,并从本地玩家的设备中移除该会议室。

DismissInvitation

void DismissInvitation(
  const MultiplayerInvitation & invitation
)

关闭对 RealTimeRoomMultiplayerInvitation

这不会更改其他参与者的 RealTimeRoom 的可见状态,而是将其从本地玩家的设备中移除。

FetchInvitations

void FetchInvitations(
  FetchInvitationsCallback callback
)

获取实时聊天室的任何 MultiplayerInvitation

提取的 MultiplayerInvitation 通过提供的 FetchInvitationsCallback 返回。

FetchInvitationsBlocking

FetchInvitationsResponse FetchInvitationsBlocking(
  Timeout timeout
)

FetchInvitations 的屏蔽版本。

允许调用方指定超时(以毫秒为单位)。指定的时间过后,函数将返回 ERROR_TIMEOUT

FetchInvitationsBlocking

FetchInvitationsResponse FetchInvitationsBlocking()

过载 FetchInvitationsBlocking,默认超时为 10 年。

LeaveRoom

void LeaveRoom(
  const RealTimeRoom & room,
  LeaveRoomCallback callback
)

退出 RealTimeRoom

在此操作完成之前,你无法创建新聊天室或尝试加入其他聊天室。此操作的结果通过 LeaveRoomCallback 返回。

LeaveRoomBlocking

ResponseStatus LeaveRoomBlocking(
  Timeout timeout,
  const RealTimeRoom & room
)

LeaveRoom 的阻塞版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

LeaveRoomBlocking

ResponseStatus LeaveRoomBlocking(
  const RealTimeRoom & room
)

LeaveRoomBlocking 的过载,默认超时时间为 10 年。

SendReliableMessage

void SendReliableMessage(
  const RealTimeRoom & room,
  const MultiplayerParticipant & participant,
  std::vector< uint8_t > data,
  SendReliableMessageCallback callback
)

向指定的 MultiplayerParticipant 发送消息。

使用可靠的方法来发送消息。这种数据发送方法可能需要比不可靠地发送消息更长的时间。发送结果通过提供的回调报告。

SendReliableMessageBlocking

MultiplayerStatus SendReliableMessageBlocking(
  Timeout timeout,
  const RealTimeRoom & room,
  const MultiplayerParticipant & participant,
  std::vector< uint8_t > data
)

SendReliableMessage 的阻塞版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

SendReliableMessageBlocking

MultiplayerStatus SendReliableMessageBlocking(
  const RealTimeRoom & room,
  const MultiplayerParticipant & participant,
  std::vector< uint8_t > data
)

SendReliableMessageBlocking 的过载,默认超时时间为 10 年。

SendUnreliableMessage

void SendUnreliableMessage(
  const RealTimeRoom & room,
  const std::vector< MultiplayerParticipant > & participants,
  std::vector< uint8_t > data
)

向指定的 MultiplayerParticipant 发送消息。

使用不可靠的方法发送消息。这种发送数据的方法比可靠地发送数据更快,应尽可能优先使用。

SendUnreliableMessageToOthers

void SendUnreliableMessageToOthers(
  const RealTimeRoom & room,
  std::vector< uint8_t > data
)

向除当前用户以外的所有参与者发送消息。

使用不可靠的方法发送消息。这种发送数据的方法比可靠地发送数据更快,应尽可能优先使用。

ShowPlayerSelectUI

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

异步显示玩家选择界面,允许玩家选择其他玩家加入房间。

完成后,系统将通过 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
)

ShowPlayerSelectUIBlocking 的过载,使用默认的 10 年超时时间。

ShowRoomInboxUI

void ShowRoomInboxUI(
  RoomInboxUICallback callback
)

异步显示会议室收件箱界面,允许玩家选择多人游戏邀请。

完成后,所选邀请将通过 RoomInboxUIResponse 返回。

ShowRoomInboxUIBlocking

RoomInboxUIResponse ShowRoomInboxUIBlocking(
  Timeout timeout
)

ShowRoomInboxUI 的屏蔽版本。

允许调用方指定超时(以毫秒为单位)。在指定的时间过后,该函数会返回 ERROR_TIMEOUT

ShowRoomInboxUIBlocking

RoomInboxUIResponse ShowRoomInboxUIBlocking()

ShowRoomInboxUIBlocking 的过载,它使用默认的超时期限为 10 年。

ShowWaitingRoomUI

void ShowWaitingRoomUI(
  const RealTimeRoom & room,
  uint32_t min_participants_to_start,
  WaitingRoomUICallback callback
)

显示等候室界面,其中显示了多人加入此会议室的状态。

ShowWaitingRoomUIBlocking

WaitingRoomUIResponse ShowWaitingRoomUIBlocking(
  Timeout timeout,
  const RealTimeRoom & room,
  uint32_t min_participants_to_start
)

ShowWaitingRoomUI 的屏蔽版本。

允许调用方指定超时(以毫秒为单位)。指定的时间过后,函数将返回 ERROR_TIMEOUT

ShowWaitingRoomUIBlocking

WaitingRoomUIResponse ShowWaitingRoomUIBlocking(
  const RealTimeRoom & room,
  uint32_t min_participants_to_start
)

ShowWaitingRoomUIBlocking 的过载,默认超时时长为 10 年。