2017-07-10 36 views
8

Oyuncuların skorlarını bir skor tablosuna gönderen, web tabanlı bir oyun geliştirdim. Oyun ayrıca, bu afişten genel puanları gösteren bir web sayfasına sahiptir. Bu verileri, scores.list API son noktasına ulaşarak alır. Skor tablosu ve oyun Google Play Console'da yayınlandı.Oyuncular sadece kendi skorlarını alırlar. API

Üç oyuncu oyunu oynadı ve onların puanları gönderildi. Her üç oyuncunun da Play Oyun Konsolu'ndaki halka açık Oyun Oyun profilleri vardır ve Liderler sayfası birden fazla benzersiz puanın gönderildiğini gösterir. Ama benim Javascript kodum score.list isabet zaman, sadece oyuncunun kendi puanı diğer iki oyuncuların değil, ürün koleksiyonunda döndürülür.

Skor tablosundan tüm puanları nasıl alabilirim? Ben

var request = gapi.client.games.scores.list({ 
    leaderboardId: leaderboardId, 
    collection: 'PUBLIC', 
    timeSpan: 'ALL_TIME' 
}); 
request.execute(function(response) { 
    if (response.items) { 
    response.items.forEach(function(item) { 
     // Print item.formattedScore to screen. 
     // Only the currently signed-in player's score is returned. 
    }) 
    } 
}) 
+0

Kodunuzu denedikten sonra hatalarınızda herhangi bir hata var mı? log? – Danee

+0

Günlüğünde hata yok ve hata görmeden bir hata ayıklayıcısında da kodu aştım. Result.items koleksiyonu sadece tek bir giriş içerir. Bu giriş şu anda oturum açmış olan oyuncunun skorudur. Bir skor gönderen oyuncu başına sonuç bir sonuç beklerdim. –

+2

Dokümanlar, "Genel afişin, oyun etkinliklerini herkese açık olarak paylaşmayı seçen oyunculardan oluşan bir afiş olduğunu söylüyor. Oynatıcınız oyun etkinliklerini herkese açık olarak paylaşmayı seçmediyse, bu başlıkta görünmezler. Bu nedenle, muhtemelen test kullanıcılarınızın oyun verilerini herkese açık olarak paylaşma seçeneğini kontrol ettiklerini kontrol etmeniz gerekir. –

cevap

0

bazı API, bazı şeyler denemek için çok uzun zaman önce çağırır yazdı:

  • olun geldiğinde değiltesting mode içinde (test modunda farklı bir davranış vardır emin paylaşılan skorları) için
  • (kabul edilen değerler ... 30 1 olan) her ihtimale karşı maxResults parametresini
+0

Önerileriniz için teşekkür ederiz! İkisini de takip ettim. Test modu: Oyunun yayınlandığından ve test edilmediğinden emin olun. maxResults: 30'a ayarlayın. Maalesef hala şu anki oyuncunun skorunu alıyorum ... –

0

Wh response geri arama işlevinin bir argümanı olarak result değişkenini kullanarak değişken kullanıyor musunuz? function(response)'u function(result) olarak değiştirirseniz her şeyin iyi olduğunu ve bunun hala işe yaramasının sebebinin, bir oyuncudan tek bir puanı kaydeden result10 başka bir değişkeniniz olduğunu varsayalım.

+0

Çalıştığını söyledi, ama sadece bir tane döndürdü .. yani sanırım bir kopya-yapıştır hatası var – MaanooAk

+0

Başka bir şey varsa işe yarayacak 'result' değişkeni üst kapsamda bir puan saklamak için kullanılan – blewherself

+0

Ah canım, bir kopyala-yapıştır hatası yaptım. Bunun için üzgünüm. Yukarıdaki "sonuç" değişkenini atayan kod satırını ekledim. –