게임에 이벤트 추가

이 가이드에서는 C++ 애플리케이션에서 이벤트 서비스를 사용하는 방법을 설명합니다.

시작하기 전에

아직 검토하지 않았다면 이벤트 게임 개념을 검토하는 것이 좋습니다.

이벤트 서비스를 사용하도록 C++ 개발 환경을 설정하려면 C++ 시작하기 가이드의 안내를 따르세요. SDK 다운로드 페이지에서 Play 게임즈 서비스 C++ SDK를 다운로드할 수 있습니다.

게임에서 이벤트에 액세스하려면 먼저 Google Play Console에서 이벤트를 정의해야 합니다.

이벤트 제출

게임에 코드를 추가하여 게임에 관심 있는 이벤트가 발생할 때마다 이벤트 서비스에 알릴 수 있습니다. 게임에서 캡처할 수 있는 이벤트의 예로는 적을 죽이거나, 다양한 게임 지역을 탐색 또는 반환하거나, 게임 내 아이템 획득 등이 있습니다. 일반적으로 이벤트에서 Increment 메서드를 호출하여 플레이어가 이벤트와 관련된 작업(예: '몬스터 한 죽음')을 수행할 때마다 이벤트 수를 1씩 올립니다.

다음 예는 업데이트된 이벤트 수를 이벤트 서비스에 제출하는 방법을 보여줍니다.

  // Increment the event count when player performs the 'Attack blue
  // monster' action.
  game_services_->Events().Increment(BLUE_MONSTER_EVENT_ID);

이벤트 검색

특정 이벤트에 대해 Google 서버에 저장된 현재 카운트 값을 검색하려면 Fetch* 메서드 중 하나를 호출합니다. 예를 들어, 게임의 맞춤 UI에서 플레이어의 인게임 통계 또는 진행 상황을 표시하고자 할 때 이 작업을 수행할 수 있습니다.

다음 예에서는 게임에서 이벤트 데이터를 검색하고 로깅하는 방법을 보여줍니다.

  // 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);