public static UniTask Yield(PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken)) { var source = new YieldPromise(cancellationToken); PlayerLoopHelper.AddAction(timing, source); return(source.Task); }
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); }
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)); }