PFLobbyPostUpdate
Post an update to the lobby as a player.
Syntax
HRESULT PFLobbyPostUpdate(
PFLobbyHandle lobby,
const PFEntityKey* localUser,
const PFLobbyDataUpdate* lobbyUpdate,
const PFLobbyMemberDataUpdate* memberUpdate,
void* asyncContext
)
Parameters
lobby
PFLobbyHandle
The handle of the lobby.
localUser
PFEntityKey*
The local user posting the update.
lobbyUpdate
PFLobbyDataUpdate*
optional
An optional update to apply to the shared portion of the lobby on behalf of localUser
. If this is not provided, memberUpdate
must be provided.
memberUpdate
PFLobbyMemberDataUpdate*
optional
An optional update to apply to the portion of the lobby owned by localUser
. If this parameter is not provided, lobbyUpdate
must be provided.
asyncContext
void*
optional
An optional, app-defined, pointer-sized context value that can be used to associate the completion state change with this call.
Return value
Type: HRESULT
S_OK
if the call succeeded or an error code otherwise. The human-readable form of the error code can be retrieved via PFMultiplayerGetErrorMessage().
Remarks
This is an asynchronous operation. Upon successful completion, the title will be provided a PFLobbyPostUpdateCompletedStateChange with the PFLobbyPostUpdateCompletedStateChange::result field set to S_OK
. Upon a failed completion, the title will be provided a PFLobbyPostUpdateCompletedStateChange with the PFLobbyPostUpdateCompletedStateChange::result field set to a failure. If applying the update would change the state of the lobby, the title will be provided a PFLobbyUpdatedStateChange sometime afterwards.
This operation completing successfully only indicates that the Lobby service has accepted the update. The title's local view of the Lobby state will not reflect this update until a PFLobbyUpdatedStateChange is provided to the title with the updated state.
The lobbyUpdate
contains fields that can only be modified by the owner of the lobby. This method will return an error if one of those fields is specified and localUser
is not the owner of the lobby.
If both a lobbyUpdate
and memberUpdate
are supplied to this method on behalf of a single entity, both updates will happen atomically.
Requirements
Header: PFLobby.h