Pasos para enviar y aceptar una invitación
Los siguientes pasos usan Multiplayer Manager para enviar una invitación al amigo de un usuario de modo que ese amigo pueda unirse a un juego en curso.- Inicializar Multiplayer Manager
- Crear la sesión de sala agregando usuarios locales
- Enviar invitaciones a amigos
- Aceptar invitaciones
- Unirse a una sesión de juego desde la sala
Inicializar Multiplayer Manager
El objeto de sesión de sala se crea automáticamente cuando Multiplayer Manager se inicializa con un nombre de plantilla de sesión válido. Las plantillas de sesión se definen en la configuración del servicio.La instancia de la sesión de sala en el servicio no se crea hasta que se agrega un usuario.
API de C plana
Crear la sesión de sala agregando usuarios locales
Agrega a la sesión de sala los usuarios de los servicios XBOX que han iniciado sesión localmente. Se hospeda una nueva sala cuando se agrega el primer usuario. Todos los demás usuarios se agregan a la sala existente como usuarios secundarios. Multiplayer Manager anuncia la sala en el shell para que los amigos se unan. Solo puedes enviar invitaciones, establecer propiedades de la sala y acceder a los miembros de la sala mediantelobby() después de haber agregado al usuario local.
Cuando un usuario local se une a la sala, se recomienda establecer su dirección de conexión y las propiedades personalizadas.
Debes repetir este proceso para todos los usuarios que han iniciado sesión localmente.
Volver al principio de este tema.
Agregar un único usuario local
API de C plana
- XblMultiplayerManagerLobbySessionAddLocalUser
- XblMultiplayerManagerLobbySessionSetLocalMemberConnectionAddress
- XblMultiplayerManagerLobbySessionSetProperties
Agregar varios usuarios locales
API de C plana
- XblMultiplayerManagerLobbySessionAddLocalUser
- XblMultiplayerManagerLobbySessionSetLocalMemberConnectionAddress
- XblMultiplayerManagerLobbySessionSetProperties
- Registrar las suscripciones de actividad en tiempo real y multijugador en el servicio multijugador de los servicios XBOX.
- Crear la sesión de sala.
- Unir a todos los jugadores locales como activos.
- Cargar la dirección segura de dispositivo (SDA).
- Establecer las propiedades de los miembros.
- Registrarse para los eventos de cambio de sesión.
- Establecer la sesión de sala como sesión activa.
Enviar invitaciones a amigos
Muestra la interfaz de usuario estándar de XBOX en la que el jugador puede seleccionar amigos o jugadores recientes para invitarlos al juego. Cuando el jugador confirma su selección, Multiplayer Manager envía las invitaciones a los jugadores seleccionados. Los juegos también pueden usar el método XblMultiplayerManagerLobbySessionInviteUsers para enviar invitaciones a un conjunto de personas definidas por sus identificadores de usuario de los servicios XBOX. Este método es útil si usas tu propia interfaz de usuario del juego en lugar de la interfaz de usuario estándar de XBOX.API de C plana
- Muestra la interfaz de usuario invocable por el título (TCUI) estándar de XBOX
- Envía una invitación directamente a los jugadores seleccionados
Aceptar invitaciones
Cuando un jugador invitado acepta una invitación de juego o se une al juego de un amigo mediante una interfaz de usuario del shell, el juego se inicia en su dispositivo. En los juegos basados en el Microsoft Game Development Kit (GDK), después de que se inicie el juego, escucha los eventos de invitación llamando a XGameActivationRegisterForEvent. En los juegos basados en el Software Development Kit de XBOX One y en la Plataforma universal de Windows (UWP), después de que se inicie el juego, Multiplayer Manager puede usar los argumentos del evento de activación de protocolo para unirse a la sala. Si el usuario invitado no se agrega mediante XblMultiplayerManagerLobbySessionAddLocalUser, XblMultiplayerManagerJoinLobby generará un error y proporcionará el xuid para el que se envió la invitación al llamar a XblMultiplayerEventArgsXuid con el eventoJoinLobbyCompleted.
Después de unirte a la sala, se recomienda establecer la dirección de conexión del miembro local y las propiedades personalizadas del miembro.
También puedes establecer el host mediante XblMultiplayerManagerLobbySessionSetSynchronizedHost si no existe ninguno.
Por último, Multiplayer Manager une automáticamente al usuario a la sesión de juego si ya hay un juego en curso y hay espacio para el invitado.
El título recibe la notificación mediante el evento JoinGameCompleted, que proporciona un código de error y un mensaje adecuados.
Los resultados de error o de éxito se controlan mediante el evento JoinLobbyCompleted.
API de C plana
- Registrar las suscripciones de actividad en tiempo real y multijugador.
- Unirse a la sesión de sala.
- Limpieza del estado de sala existente.
- Unir a todos los jugadores locales como activos.
- Cargar la SDA.
- Establecer las propiedades de los miembros.
- Registrarse para los eventos de cambio de sesión.
- Establecer la sesión de sala como sesión activa.
- Unirse a la sesión de juego (si existe).
- Usar un identificador de transferencia.
Unirse a una sesión de juego desde la sala
Después de que se hayan aceptado las invitaciones y el host esté listo para empezar a jugar, puedes iniciar un nuevo juego que incluya a los miembros de la sesión de sala llamando a XblMultiplayerManagerJoinGameFromLobby. Los resultados de error o de éxito se controlan mediante el eventoJoinGameCompleted.
API de C plana
- Crear la sesión de juego.
- Unir a todos los jugadores locales como activos.
- Cargar la SDA.
- Establecer las propiedades de los miembros.
- Registrarse para los eventos de cambio de sesión.
- Anunciar el juego mediante la sesión de sala.
