En esta guía, se muestra cómo usar el servicio de eventos en una aplicación de C++.
Antes de comenzar
Si aún no lo has hecho, puede resultarte útil consultar el conceptos de juegos de eventos.
Para configurar tu entorno de desarrollo de C++ para usar el servicio de eventos, sigue las instrucciones de la guía de Introducción a C++. Puedes descargar el SDK de C++ de los Servicios de juego de Play desde la página de descargas de SDK.
Antes de que tu juego pueda acceder a eventos, primero debes definirlos en Google Play Console.
Cómo enviar un evento
Puedes agregar código a tu juego para notificar al servicio de eventos cada vez que se produzca un evento de interés en tu juego. Ejemplos de eventos que puedes capturar en tu
matar enemigos, explorar o regresar a diversos
regiones del juego ni adquirir elementos. Por lo general, uno
el método Increment
en el administrador de eventos para aumentar la cantidad de eventos en 1 cada vez que el jugador
realiza una acción asociada con el evento
(por ejemplo, "Mataron a un monstruo").
En el siguiente ejemplo, se muestra cómo puedes enviar el recuento de eventos actualizado al servicio de eventos.
// Increment the event count when player performs the 'Attack blue
// monster' action.
game_services_->Events().Increment(BLUE_MONSTER_EVENT_ID);
Cómo recuperar eventos
Para recuperar el valor de recuento actual almacenado en los servidores de Google para un
evento, llama a uno de los métodos Fetch*
. Puedes hacerlo, por ejemplo, si quieres mostrar las estadísticas o el progreso de un jugador en el juego desde una IU personalizada.
En el siguiente ejemplo, se muestra cómo puedes recuperar y registrar los datos del evento en tu juego.
// Log Events details.
LogI("---- Showing Event Counts -----");
gpg::EventManager::FetchAllCallback callback =
[](gpg::EventManager::FetchAllResponse const &response) {
for (auto i : response.data) {
gpg::Event const &event = i.second;
LogI("Event name: %s count: %d", event.Name().c_str(),
event.Count());
}
};
game_services_->Events().FetchAll(callback);