diff --git a/gpgs/src/java/com/defold/gpgs/GpgsJNI.java b/gpgs/src/java/com/defold/gpgs/GpgsJNI.java index 55560ce..c23f624 100644 --- a/gpgs/src/java/com/defold/gpgs/GpgsJNI.java +++ b/gpgs/src/java/com/defold/gpgs/GpgsJNI.java @@ -617,8 +617,9 @@ public void submitScore(String leaderboardId, double score) { } } - private static JSONObject scoreToJSON(LeaderboardScore score) throws JSONException { + private static JSONObject scoreToJSON(LeaderboardScore score, String leaderboardId) throws JSONException { JSONObject json = new JSONObject(); + json.put("leaderboard_id", leaderboardId); json.put("display_rank", score.getDisplayRank()); json.put("display_score", score.getDisplayScore()); json.put("rank", score.getRank()); @@ -631,7 +632,7 @@ private static JSONObject scoreToJSON(LeaderboardScore score) throws JSONExcepti return json; } - public void loadTopScores(String leaderboardId, int span, int collection, int maxResults) { + public void loadTopScores(final String leaderboardId, int span, int collection, int maxResults) { if(initLeaderboards()) { Task> task = mLeaderboardsClient.loadTopScores(leaderboardId, span, collection, maxResults); task.addOnSuccessListener(new OnSuccessListener>() { @@ -643,7 +644,7 @@ public void onSuccess(AnnotatedData data) try { JSONArray result = new JSONArray(); for (LeaderboardScore score : buffer) { - JSONObject json = scoreToJSON(score); + JSONObject json = scoreToJSON(score, leaderboardId); result.put(json.toString()); } message = result.toString(); @@ -658,7 +659,7 @@ public void onSuccess(AnnotatedData data) } } - public void loadPlayerCenteredScores(String leaderboardId, int span, int collection, int maxResults) { + public void loadPlayerCenteredScores(final String leaderboardId, int span, int collection, int maxResults) { if(initLeaderboards()) { Task> task = mLeaderboardsClient.loadPlayerCenteredScores(leaderboardId, span, collection, maxResults); task.addOnSuccessListener(new OnSuccessListener>() { @@ -670,7 +671,7 @@ public void onSuccess(AnnotatedData data) try { JSONArray result = new JSONArray(); for (LeaderboardScore score : buffer) { - JSONObject json = scoreToJSON(score); + JSONObject json = scoreToJSON(score, leaderboardId); result.put(json.toString()); } message = result.toString(); @@ -685,7 +686,7 @@ public void onSuccess(AnnotatedData data) } } - public void loadCurrentPlayerLeaderboardScore(String leaderboardId, int span, int collection) { + public void loadCurrentPlayerLeaderboardScore(final String leaderboardId, int span, int collection) { if(initLeaderboards()) { Task> task = mLeaderboardsClient.loadCurrentPlayerLeaderboardScore(leaderboardId, span, collection); task.addOnSuccessListener(new OnSuccessListener>() { @@ -699,7 +700,7 @@ public void onSuccess(AnnotatedData data) { } else { try { - JSONObject result = scoreToJSON(score); + JSONObject result = scoreToJSON(score, leaderboardId); message = result.toString(); } catch (JSONException e) { message = "{ \"error\": \"Error while converting leaderboard score to JSON: " + e.getMessage() + "\", \"status\": " + STATUS_FAILED + " }";