Ejemplo n.º 1
0
    public static void LinkFaceBookToPlayFab()
    {
        DialogCanvasController.RequestLoadingPrompt(PlayFabAPIMethods.LinkFacebookId);
        var request = new LinkFacebookAccountRequest {
            AccessToken = AccessToken.CurrentAccessToken.TokenString
        };

        PlayFabClientAPI.LinkFacebookAccount(request, OnLinkSuccess, error =>
        {
            if (!error.ErrorMessage.Contains("already linked")) // ew, gotta get better error codes
            {
                PF_Bridge.RaiseCallbackError(error.ErrorMessage, PlayFabAPIMethods.LinkFacebookId, MessageDisplayStyle.error);
                return;
            }

            PF_Bridge.RaiseCallbackSuccess(string.Empty, PlayFabAPIMethods.LinkFacebookId, MessageDisplayStyle.none);
            Action <bool> afterConfirm = (bool response) =>
            {
                if (!response)
                {
                    return;
                }

                DialogCanvasController.RequestLoadingPrompt(PlayFabAPIMethods.LinkFacebookId);
                request.ForceLink = true;
                PlayFabClientAPI.LinkFacebookAccount(request, OnLinkSuccess, PF_Bridge.PlayFabErrorCallback);
            };

            DialogCanvasController.RequestConfirmationPrompt("Caution!", "Your current facebook account is already linked to another Unicorn Battle player. Do you want to force-bind your Facebook account to this player?", afterConfirm);
        });
    }
Ejemplo n.º 2
0
        //public void LoginWithKong(string authTicket, long userId, Action<LoginResult> loginSuccess, Action<PlayFabError> loginFailure)
        //{
        //    var request = new LoginWithCustomIDRequest { CustomId = userId.ToString(), CreateAccount = false };
        //    PlayFabClientAPI.LoginWithCustomID(request, (LoginResult loginResult) => { OnPlayerLogin(); loginSuccess.Invoke(loginResult); IsLogged = true; PlayFabId = loginResult.PlayFabId; }, (PlayFabError e) => loginFailure.Invoke(e));
        //}


        //public void LinkKongregateAccount(string authTicket, long userId, Action<LinkCustomIDResult> callBack)
        //{
        //    var request = new LinkCustomIDRequest { CustomId = userId.ToString(), ForceLink = false };
        //    PlayFabClientAPI.LinkCustomID(request, callBack, (PlayFabError e) => callBack(null));
        //}


        public void LinkFacebookAccount(string accessToken, Action <LinkFacebookAccountResult> callBack, Action <PlayFabError> error)
        {
            var request = new LinkFacebookAccountRequest {
                AccessToken = accessToken, ForceLink = false
            };

            PlayFabClientAPI.LinkFacebookAccount(request, callBack, error);
        }
Ejemplo n.º 3
0
    /// <summary>
    /// Function to add the Facebook link in PlayFab
    /// </summary>
    /// <param name="facebookToken"></param>
    public void AddFacebookLink(string facebookToken)
    {
        var request = new LinkFacebookAccountRequest {
            AccessToken = facebookToken
        };

        PlayFabClientAPI.LinkFacebookAccount(request, AddFacebookSuccess, OnFailure);
    }
Ejemplo n.º 4
0
        public static IEnumerator <LinkFacebookAccountResult> LinkFacebook()
        {
            IEnumerator <string> getAccessTokenCoroutine = GetFacebookAccessToken();
            string accessToken = null;

            while (getAccessTokenCoroutine.MoveNext())
            {
                accessToken = getAccessTokenCoroutine.Current;
            }

            var request = new LinkFacebookAccountRequest {
                AccessToken = accessToken
            };

            return(Do <LinkFacebookAccountRequest, LinkFacebookAccountResult>(request, PlayFabClientAPI.LinkFacebookAccount));
        }
Ejemplo n.º 5
0
        private IEnumerator <LinkFacebookAccountResult> LinkFacebookCoroutine()
        {
            var accessToken = this.GetFacebookAccessToken();

            while (accessToken.IsDone == false)
            {
                yield return(default(LinkFacebookAccountResult));
            }

            var request = new LinkFacebookAccountRequest {
                AccessToken = accessToken.Value
            };

            var link = PF.Do <LinkFacebookAccountRequest, LinkFacebookAccountResult>(request, PlayFabClientAPI.LinkFacebookAccount);

            while (link.IsDone == false)
            {
                yield return(default(LinkFacebookAccountResult));
            }

            yield return(link.Value);
        }