gpg::RealTimeMultiplayerManager

#include <real_time_multiplayer_manager.h>

获取、修改、处理消息以及创建RealTimeRoom 对象。

摘要

公共类型

FetchInvitationsCallback typedef
std::function< void(const FetchInvitationsResponse &)>
定义一个回调函数,用于接收来自实时多人游戏操作的WaitingRoomUIResponse
LeaveRoomCallback typedef
std::function< void(const ResponseStatus &)>
定义一个回调函数,用于接收来自LeaveRoomResponseStatus
PlayerSelectUICallback typedef
std::function< void(const PlayerSelectUIResponse &)>
定义一个回调函数,用于接收来自ShowPlayerSelectUIPlayerSelectUIResponse
PlayerSelectUIResponse typedef
DataResponseStatus用于ShowPlayerSelectUI操作。
RealTimeRoomCallback typedef
std::function< void(const RealTimeRoomResponse &)>
定义一个回调函数,用于接收来自回合制多人游戏操作的RealTimeRoomResponse结构体。
RoomInboxUICallback typedef
std::function< void(const RoomInboxUIResponse &)>
定义一个回调函数,用于接收来自ShowRoomInboxUIRoomInboxUIResponse
SendReliableMessageCallback typedef
std::function< void(const MultiplayerStatus &)>
定义一个回调函数,用于接收来自SendReliableMessageResponseStatus
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
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 超时时间, 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
异步显示玩家选择UI,允许玩家选择其他玩家加入房间。
ShowPlayerSelectUIBlocking(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
异步显示房间收件箱UI,允许玩家选择多人游戏邀请。
ShowRoomInboxUIBlocking(Timeout 超时时间)
ShowRoomInboxUI 的阻塞版本。
ShowRoomInboxUIBlocking()
ShowRoomInboxUIBlocking 的重载版本,使用默认超时时间为 10 年。
ShowWaitingRoomUI(const RealTimeRoom & room, uint32_t min_participants_to_start, WaitingRoomUICallback callback)
void
显示等待室UI,显示加入此房间的多人参与者的状态。
ShowWaitingRoomUIBlocking(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

定义一个回调函数,用于接收来自LeaveRoomResponseStatus

PlayerSelectUICallback

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

定义一个回调函数,用于接收来自ShowPlayerSelectUIPlayerSelectUIResponse

PlayerSelectUIResponse

TurnBasedMultiplayerManager::PlayerSelectUIResponse PlayerSelectUIResponse

DataResponseStatus用于ShowPlayerSelectUI操作。

这与回合制多人游戏共享。

RealTimeRoomCallback

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

定义一个回调函数,用于接收来自回合制多人游戏操作的RealTimeRoomResponse结构体。

RoomInboxUICallback

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

定义一个回调函数,用于接收来自ShowRoomInboxUIRoomInboxUIResponse

SendReliableMessageCallback

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

定义一个回调函数,用于接收来自SendReliableMessageResponseStatus

WaitingRoomUICallback

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

定义一个回调函数,用于接收来自实时多人游戏操作的WaitingRoomUIResponse

公共函数

接受邀请

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

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

接受邀请

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

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

阻塞式接受邀请

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

AcceptInvitation的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式接受邀请

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

AcceptInvitationBlocking的重载版本,使用默认超时时间为10年。

阻塞式接受邀请

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

AcceptInvitation的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式接受邀请

RealTimeRoomResponse AcceptInvitationBlocking(
  const MultiplayerInvitation & invitation,
  RealTimeEventListenerHelper helper
)

AcceptInvitationBlocking的重载版本,使用默认超时时间为10年。

创建实时房间

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

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

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

创建实时房间

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

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

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

阻塞式创建实时房间

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

CreateRealTimeRoom的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式创建实时房间

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

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

阻塞式创建实时房间

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

CreateRealTimeRoom的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式创建实时房间

RealTimeRoomResponse CreateRealTimeRoomBlocking(
  const RealTimeRoomConfig & config,
  RealTimeEventListenerHelper helper
)

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

拒绝邀请

void DeclineInvitation(
  const MultiplayerInvitation & invitation
)

拒绝进入RealTimeRoomMultiplayerInvitation

这样做会取消其他参与者的房间,并从本地玩家的设备中删除房间。

取消邀请

void DismissInvitation(
  const MultiplayerInvitation & invitation
)

驳回进入RealTimeRoomMultiplayerInvitation

这不会改变其他参与者 RealTimeRoom 的可见状态,但会将其从本地玩家的设备中删除。

获取邀请

void FetchInvitations(
  FetchInvitationsCallback callback
)

获取任何实时房间的MultiplayerInvitation

获取到的 MultiplayerInvitation 将通过提供的 FetchInvitationsCallback 返回。

FetchInvitationsBlocking

FetchInvitationsResponse FetchInvitationsBlocking(
  Timeout timeout
)

FetchInvitations的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数将返回 ERROR_TIMEOUT

FetchInvitationsBlocking

FetchInvitationsResponse FetchInvitationsBlocking()

FetchInvitationsBlocking的重载版本,使用默认超时时间为10年。

离开房间

void LeaveRoom(
  const RealTimeRoom & room,
  LeaveRoomCallback callback
)

离开RealTimeRoom

在此操作完成之前,您不应该创建新的房间或尝试加入另一个房间。此操作的结果将通过 LeaveRoomCallback 返回。

阻塞式离开房间

ResponseStatus LeaveRoomBlocking(
  Timeout timeout,
  const RealTimeRoom & room
)

LeaveRoom的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式离开房间

ResponseStatus LeaveRoomBlocking(
  const RealTimeRoom & room
)

LeaveRoomBlocking的重载版本,使用默认超时时间为10年。

发送可靠消息

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

向指定的MultiplayerParticipant发送消息。

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

阻塞式发送可靠消息

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

SendReliableMessage 的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式发送可靠消息

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

SendReliableMessageBlocking 的重载版本,使用默认超时时间为 10 年。

发送不可靠消息

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

将消息发送到指定的MultiplayerParticipant

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

向其他人发送不可靠消息

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

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

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

显示玩家选择UI

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

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

完成后,将通过 PlayerSelectUICallback 返回所选玩家。

阻塞式显示玩家选择UI

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

ShowPlayerSelectUI 的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

阻塞式显示玩家选择UI

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

ShowPlayerSelectUIBlocking 的重载版本,使用默认超时时间为 10 年。

显示房间收件箱UI

void ShowRoomInboxUI(
  RoomInboxUICallback callback
)

异步显示房间收件箱UI,允许玩家选择多人游戏邀请。

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

ShowRoomInboxUIBlocking

RoomInboxUIResponse ShowRoomInboxUIBlocking(
  Timeout timeout
)

ShowRoomInboxUI 的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数返回 ERROR_TIMEOUT

ShowRoomInboxUIBlocking

RoomInboxUIResponse ShowRoomInboxUIBlocking()

ShowRoomInboxUIBlocking 的重载版本,使用默认超时时间为 10 年。

显示等待室UI

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

显示等待室UI,显示加入此房间的多人参与者的状态。

阻塞式显示等待室UI

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

ShowWaitingRoomUI 的阻塞版本。

允许调用者指定超时时间(毫秒)。超过指定时间后,函数将返回 ERROR_TIMEOUT

阻塞式显示等待室UI

WaitingRoomUIResponse ShowWaitingRoomUIBlocking(
  const RealTimeRoom & room,
  uint32_t min_participants_to_start
)

ShowWaitingRoomUIBlocking 的重载版本,使用默认超时时间为 10 年。