Tambahkan acara ke game Anda

Panduan ini menunjukkan cara menggunakan layanan Peristiwa di aplikasi C++.

Sebelum memulai

Jika Anda belum melakukannya, sebaiknya tinjau konsep game peristiwa.

Untuk menyiapkan lingkungan pengembangan C++ agar dapat menggunakan layanan Peristiwa, ikuti petunjuk dalam panduan Memulai untuk C++. Anda dapat mendownload SDK C++ layanan game Play dari halaman download SDK.

Sebelum game dapat mengakses peristiwa, Anda harus menentukannya terlebih dahulu di Konsol Google Play.

Mengirim peristiwa

Anda dapat menambahkan kode dalam game untuk memberi tahu layanan Peristiwa setiap kali terjadi peristiwa yang menarik untuk game. Contoh peristiwa yang dapat Anda rekam dalam game adalah: membunuh musuh, menjelajahi atau kembali ke berbagai wilayah game, atau memperoleh item dalam game. Biasanya, Anda akan memanggil metode Increment di pengelola peristiwa untuk menambahkan 1 ke jumlah peristiwa setiap kali pemain melakukan tindakan yang terkait dengan peristiwa (misalnya, “Membunuh satu monster”).

Contoh berikut menunjukkan cara mengirimkan jumlah peristiwa yang diperbarui ke layanan Peristiwa.

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

Mengambil peristiwa

Untuk mengambil nilai jumlah saat ini yang disimpan di server Google untuk peristiwa tertentu, panggil salah satu metode Fetch*. Anda dapat melakukannya, misalnya, jika ingin menampilkan statistik dalam game atau progres pemain dari UI kustom dalam game.

Contoh berikut menunjukkan cara mengambil dan mencatat data peristiwa dalam game Anda.

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