Esempio n. 1
0
        public static UniTask Yield(PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken))
        {
            var source = new YieldPromise(cancellationToken);

            PlayerLoopHelper.AddAction(timing, source);
            return(source.Task);
        }
Esempio n. 2
0
        public static YieldPromise <ulong, string> GetFacebookIdForAccessToken(string accessToken)
        {
            var query   = "/me?access_token=" + Uri.EscapeDataString(accessToken);
            var promise = new YieldPromise <ulong, string>();

            FB.API(query, HttpMethod.GET, result => {
                if (string.IsNullOrEmpty(result.Error))
                {
                    promise.Reject(result.Error);
                }
                else
                {
                    var fbUserIdStr = result.ResultDictionary["id"].ToString();
                    ulong fbUserId;
                    if (ulong.TryParse(fbUserIdStr, out fbUserId))
                    {
                        promise.Resolve(fbUserId);
                    }
                    else
                    {
                        promise.Reject("Couldn't parse Facebook user ID");
                    }
                }
            });
            return(promise);
        }
Esempio n. 3
0
        public void StartBattle()
        {
            GameManager.instance.TogglePause();

            var loadSceneInstruction = SceneManager.LoadSceneAsync("Scenes/Banditmon", LoadSceneMode.Additive);

            YieldPromise.Generate(loadSceneInstruction);
        }
 public static UniTask Yield(PlayerLoopTiming timing, CancellationToken cancellationToken)
 {
     return(new UniTask(YieldPromise.Create(timing, cancellationToken, out var token), token));
 }