Beispiel #1
0
    private void OnRequestScoresCompleted(AGSRequestScoresResponse response)
    {
        // Put scores in leaderboard.
        AGSSocialLeaderboard leaderboard = leaderboardForRequest.ContainsKey(response.userData) ? leaderboardForRequest[response.userData] : null;

        if (null != leaderboard && !response.IsError())
        {
            leaderboard.scores = new IScore[response.scores.Count];
            for (int i = 0; i < response.scores.Count; i++)
            {
                leaderboard.scores[i] = new AGSSocialLeaderboardScore(response.scores[i], response.leaderboard);
            }
        }
        // Handle any callbacks
        Action <bool> callback = simpleCallbacks.ContainsKey(response.userData) ? simpleCallbacks[response.userData] : null;

        if (null != callback)
        {
            callback(!response.IsError());
        }
        Action <IScore[]> scoreCallback = loadScoresCallbacks.ContainsKey(response.userData) ? loadScoresCallbacks[response.userData] : null;

        if (null != scoreCallback)
        {
            IScore[] scores = new IScore[response.scores.Count];
            for (int i = 0; i < response.scores.Count; i++)
            {
                scores[i] = new AGSSocialLeaderboardScore(response.scores[i], response.leaderboard);
            }
            scoreCallback(scores);
        }
        // cleanup
        leaderboardForRequest.Remove(response.userData);
        simpleCallbacks.Remove(response.userData);
    }
Beispiel #2
0
    private void OnTopScoresLoaded(AGSRequestScoresResponse response)
    {
        AMN_ScoresLoadedResult result = null;

        if (response.IsError())
        {
            Debug.Log("[OnTopScoresLoaded] error " + response.error);
            result = new AMN_ScoresLoadedResult(response.leaderboardId, response.error);
        }
        else
        {
            Debug.Log("[OnTopScoresLoaded] " + response.scores.Count + " scores loaded");
            GC_Leaderboard lb = GetLeaderboard(response.leaderboardId);
            if (lb != null)
            {
                foreach (AGSScore score in response.scores)
                {
                    Debug.Log(string.Format("[OnTopScoresLoaded] AGSScore {0}|{1}|{2}|{3}|{4}",
                                            score.player.playerId,
                                            response.leaderboardId,
                                            score.rank,
                                            score.scoreValue,
                                            response.scope.GetGCTimeSpan().ToString()));

                    GC_Player player = new GC_Player(score.player);
                    AddPlayer(player);

                    GC_Score s = new GC_Score(score.player.playerId, response.leaderboardId, score.rank, score.scoreValue, response.scope.GetGCTimeSpan());
                    lb.UpdateScore(s);
                }
            }
            result = new AMN_ScoresLoadedResult(lb);
        }

        OnScoresLoaded(result);
    }
    private void OnRequestScoresCompleted( AGSRequestScoresResponse response )
    {
        List<string> formattedResult = new List<string>();

        if (response.IsError ()) {
            formattedResult.Add(string.Format ("Error with scores request: {0}", response.error));
        } else {
            formattedResult.Add(string.Format("Leaderboard: [{0}]", response.leaderboard.ToString()));
            formattedResult.Add (string.Format("Scope: {0}", response.scope));
            foreach (AGSScore score in response.scores){
                formattedResult.Add(string.Format(topScoreItemLabel, score.player.ToString(), score.scoreValue, score.scoreString, score.rank));
            }
        }

        leaderboardsScoresStatus[response.leaderboardId] = formattedResult;
    }
Beispiel #4
0
 private void OnRequestScoresCompleted(AGSRequestScoresResponse response)
 {
     // Put scores in leaderboard.
     AGSSocialLeaderboard leaderboard = leaderboardForRequest.ContainsKey (response.userData) ? leaderboardForRequest[response.userData] : null;
     if (null != leaderboard && !response.IsError()) {
         leaderboard.scores = new IScore[response.scores.Count];
         for (int i = 0; i < response.scores.Count; i++) {
             leaderboard.scores[i] = new AGSSocialLeaderboardScore(response.scores[i], response.leaderboard);
         }
     }
     // Handle any callbacks
     Action<bool> callback = simpleCallbacks.ContainsKey(response.userData) ? simpleCallbacks[response.userData] : null;
     if (null != callback) {
         callback(!response.IsError());
     }
     Action<IScore[]> scoreCallback = loadScoresCallbacks.ContainsKey (response.userData) ? loadScoresCallbacks[response.userData] : null;
     if (null != scoreCallback) {
         IScore[] scores = new IScore[response.scores.Count];
         for (int i = 0; i < response.scores.Count; i++) {
             scores[i] = new AGSSocialLeaderboardScore(response.scores[i], response.leaderboard);
         }
         scoreCallback(scores);
     }
     // cleanup
     leaderboardForRequest.Remove (response.userData);
     simpleCallbacks.Remove (response.userData);
 }