gpg:: RealTimeMultiplayerManager
#include <real_time_multiplayer_manager.h>
提取、修改、处理 RealTimeRoom
对象的消息传递,以及创建 RealTimeRoom
对象。
摘要
公共类型 |
|
---|---|
FetchInvitationsCallback
|
typedefstd::function< void(const FetchInvitationsResponse &)>
定义一个回调,用于从某个实时多人游戏操作接收 WaitingRoomUIResponse 。 |
LeaveRoomCallback
|
typedefstd::function< void(const ResponseStatus &)>
定义一个可从 LeaveRoom 接收 ResponseStatus 的回调。 |
PlayerSelectUICallback
|
typedefstd::function< void(const PlayerSelectUIResponse &)>
定义一个可从 ShowPlayerSelectUI 接收 PlayerSelectUIResponse 的回调。 |
PlayerSelectUIResponse
|
typedefData 和 ResponseStatus 用于 ShowPlayerSelectUI 运算。 |
RealTimeRoomCallback
|
typedefstd::function< void(const RealTimeRoomResponse &)>
定义一个回调,用于从某个基于回合的多人游戏操作接收 RealTimeRoomResponse 结构体。 |
RoomInboxUICallback
|
typedefstd::function< void(const RoomInboxUIResponse &)>
定义一个可从 ShowRoomInboxUI 接收 RoomInboxUIResponse 的回调。 |
SendReliableMessageCallback
|
typedefstd::function< void(const MultiplayerStatus &)>
定义一个可从 SendReliableMessage 接收 ResponseStatus 的回调。 |
WaitingRoomUICallback
|
typedefstd::function< void(const WaitingRoomUIResponse &)>
定义一个回调,用于从某个实时多人游戏操作接收 WaitingRoomUIResponse 。 |
结构体 |
|
---|---|
gpg:: |
|
gpg:: |
特定 |
gpg:: |
|
gpg:: |
|
公共类型
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
Data
和 ResponseStatus
用于 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 )
将 MultiplayerInvitation
降级为 RealTimeRoom
。
这样做会取消其他参与者的房间,并从本地玩家的设备中移除房间。
DismissInvitation
void DismissInvitation( const MultiplayerInvitation & invitation )
将 MultiplayerInvitation
关闭为 RealTimeRoom
。
这不会更改其他参与者的 RealTimeRoom
的公开状态,但会将其从本地玩家的设备中移除。
提取邀请
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 )
显示一个等候室界面,用于显示加入此聊天室的 MultiplayerParticipant 的状态。
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 年。