示例#1
0
        private void RequestLocalPlayerCompleted(AGSRequestPlayerResponse response)
        {
            var sb = new StringBuilder();

            sb.AppendLine("RequestLocalPlayerCompleted:");

            if (response.IsError())
            {
                sb.AppendLine("Error: " + response.error);
            }
            else
            {
                if (response.player != null)
                {
                    playerID    = response.player.playerId;
                    playerAlias = response.player.alias;
                    if (string.IsNullOrEmpty(response.player.avatarUrl))
                    {
#if CLOUDONCE_DEBUG
                        Debug.LogWarning("Can't download profile picture; URL was null.");
#endif
                    }
                    else
                    {
                        StartCoroutine(DownloadPlayerImage(response.player.avatarUrl));
                    }

                    sb.AppendFormat("Player: {0} - Id: {1} ", response.player.alias, response.player.playerId);
                }
            }
#if CLOUDONCE_DEBUG
            Debug.Log(sb);
#endif
        }
 public static AGSRequestPlayerResponse GetBlankResponseWithError(string error, int userData = 0)
 {
     AGSRequestPlayerResponse response = new AGSRequestPlayerResponse ();
     response.error = error;
     response.userData = userData;
     response.player = AGSPlayer.GetBlankPlayer();
     return response;
 }
    public static AGSRequestPlayerResponse GetBlankResponseWithError(string error, int userData = 0)
    {
        AGSRequestPlayerResponse response = new AGSRequestPlayerResponse();

        response.error    = error;
        response.userData = userData;
        response.player   = AGSPlayer.GetBlankPlayer();
        return(response);
    }
示例#4
0
    private void OnRequestPlayerCompleted(AGSRequestPlayerResponse response)
    {
        AGSSocialLocalUser.player = response.player;
        Action <bool> callback = simpleCallbacks.ContainsKey(response.userData) ? simpleCallbacks[response.userData] : null;

        if (null != callback)
        {
            callback(!response.IsError());
        }
        simpleCallbacks.Remove(response.userData);
    }
示例#5
0
    /// <summary>
    ///  callback method for native code to communicate events back to unity
    /// </summary>
    public static void PlayerFailed(string json)
    {
        AGSRequestPlayerResponse response = AGSRequestPlayerResponse.FromJSON(json);

        if (response.IsError() && PlayerFailedEvent != null)
        {
            PlayerFailedEvent(response.error);
        }
        if (RequestLocalPlayerCompleted != null)
        {
            RequestLocalPlayerCompleted(response);
        }
    }
 public static AGSRequestPlayerResponse FromJSON(string json)
 {
     try {
         AGSRequestPlayerResponse response = new AGSRequestPlayerResponse();
         Hashtable hashtable = json.hashtableFromJson();
         response.error    = hashtable.ContainsKey("error") ? hashtable ["error"].ToString() : "";
         response.userData = hashtable.ContainsKey("userData") ? int.Parse(hashtable ["userData"].ToString()) : 0;
         response.player   = hashtable.ContainsKey("player") ? AGSPlayer.fromHashtable(hashtable ["player"] as Hashtable) : AGSPlayer.GetBlankPlayer();
         return(response);
     } catch (Exception e) {
         AGSClient.LogGameCircleError(e.ToString());
         return(GetBlankResponseWithError(JSON_PARSE_ERROR));
     }
 }
 public static AGSRequestPlayerResponse FromJSON(string json)
 {
     try {
         AGSRequestPlayerResponse response = new AGSRequestPlayerResponse ();
         Hashtable hashtable = json.hashtableFromJson();
         response.error = hashtable.ContainsKey("error") ? hashtable ["error"].ToString () : "";
         response.userData = hashtable.ContainsKey("userData") ? int.Parse(hashtable ["userData"].ToString ()) : 0;
         response.player = hashtable.ContainsKey ("player") ? AGSPlayer.fromHashtable (hashtable ["player"] as Hashtable) : AGSPlayer.GetBlankPlayer ();
         return response;
     } catch (Exception e) {
         AGSClient.LogGameCircleError(e.ToString());
         return GetBlankResponseWithError(JSON_PARSE_ERROR);
     }
 }
示例#8
0
    private void OnPlayerDataLoaded(AGSRequestPlayerResponse response)
    {
        if (response.IsError())
        {
            Player = null;
            AMN_RequestPlayerDataResult result = new AMN_RequestPlayerDataResult(response.error);

            OnRequestPlayerDataReceived(result);
        }
        else
        {
            this._player = new GC_Player(response.player);
            AMN_RequestPlayerDataResult result = new AMN_RequestPlayerDataResult(Player);

            OnRequestPlayerDataReceived(result);
        }
    }
示例#9
0
#pragma warning disable 0618

    /// <summary>
    /// Request the local player player information
    /// <param name="userData">
    /// ANDROID ONLY
    /// An optional code that will be returned in the response. Used to associate a function call to its response.
    /// A value of 0 is not recommended because 0 is the value returned when userData is not specified.
    /// </param>
    /// </summary>
    public static void RequestLocalPlayer(int userData = 0)
    {
#if UNITY_EDITOR && (UNITY_ANDROID || UNITY_IOS)
        // GameCircle only functions on device.
#elif UNITY_ANDROID
        JavaObject.Call("requestLocalPlayer", userData);
#else
        AGSRequestPlayerResponse response = AGSRequestPlayerResponse.GetPlatformNotSupportedResponse(userData);
        if (PlayerFailedEvent != null)
        {
            PlayerFailedEvent(response.error);
        }
        if (RequestLocalPlayerCompleted != null)
        {
            RequestLocalPlayerCompleted(response);
        }
#endif
    }
示例#10
0
 private void OnRequestPlayerCompleted(AGSRequestPlayerResponse response)
 {
     AGSSocialLocalUser.player = response.player;
     Action<bool> callback = simpleCallbacks.ContainsKey(response.userData) ? simpleCallbacks[response.userData] : null;
     if (null != callback) {
         callback(!response.IsError());
     }
     simpleCallbacks.Remove (response.userData);
 }
 private void OnPlayerRequestCompleted(AGSRequestPlayerResponse response)
 {
     if (response.IsError ()) {
         playerStatus = playerFailedLabel;
         playerStatusMessage = response.error;
         this.player = null;
     } else {
         playerStatus = playerReceivedLabel;
         playerStatusMessage = null;
         this.player = response.player;
     }
 }