XblMultiplayerManagerJoinGameFromLobby
为大厅会话创建新的游戏会话,或加入现有游戏会话(若大厅会话存在游戏会话)。
语法
HRESULT XblMultiplayerManagerJoinGameFromLobby(
const char* sessionTemplateName
)
参数
sessionTemplateName _In_z_
类型:char*
游戏会话所基于的会话模板的名称。
返回值
类型:HRESULT
此 API 操作的 HRESULT 返回代码。
备注
如果游戏会话不存在,此函数会创建一个新的游戏会话并将大厅会话的当前成员添加到游戏会话中。 如果新用户在创建游戏会话后加入大厅会话,则此函数将通过使用大厅会话中的转移句柄在多人游戏会话目录 (MPSD) 中查找现有游戏会话,然后使用该转移句柄将新用户添加到游戏会话。 有关详细信息,请参阅多人游戏概念概述。 如果大厅会话不存在,可能因为在调用此函数前未调用 XblMultiplayerManagerInitialize,则会发生错误。 如果正在进行匹配,也会发生错误。 此函数不会将现有大厅会话属性迁移到游戏会话。
此函数的结果以多人游戏事件的形式传递,事件类型设置为 XblMultiplayerEventType::JoinGameCompleted
。 可以调用 XblMultiplayerManagerDoWork 来检索多人游戏事件。
如果在尝试加入大厅会话时服务器已满,则服务将返回 HTTP_E_STATUS_BAD_REQUEST
。
加入后,可以通过调用 XblMultiplayerManagerGameSessionSetProperties 或 XblMultiplayerManagerGameSessionSetSynchronizedProperties 来设置游戏会话的属性,或者可以通过调用 XblMultiplayerManagerGameSessionSetSynchronizedHost 来设置游戏会话的主机。
要求
头文件:multiplayer_manager_c.h
图书馆: Microsoft.Xbox.Services.14x.GDK.C.lib
另请参阅
multiplayer_manager_c
XblMultiplayerManagerJoinability
XblMultiplayerManagerJoinGame
XblMultiplayerManagerJoinLobby