private void OnPeriodHashObtained(PeriodHashEventArgs e) { EventHandler <PeriodHashEventArgs> handler = PeriodHashObtained; if (handler != null) { handler(this, e); } }
public IEnumerator GetPeriodHash() { var task = ParseCloud.CallFunctionAsync <string>("PeriodicHash", new Dictionary <string, object>()); while (!task.IsCompleted) { yield return(null); } if (task.IsFaulted) { foreach (var e in task.Exception.InnerExceptions) { Debug.Log("Exception type: " + e.GetType()); //Exception parseException = e; ParseException parseException = (ParseException)e; Debug.Log("Error message " + parseException.Message); Debug.Log("Error code: " + parseException.Code); } var ea = new PeriodHashEventArgs(); ea.Seed = 0; ea.Success = false; OnPeriodHashObtained(ea); } else { if (task.Result == null) { var ea = new PeriodHashEventArgs(); ea.Seed = 0; ea.Success = false; OnPeriodHashObtained(ea); } else { var seed = task.Result.GetHashCode(); GlobalData.Instance.rawSeed = task.Result.ToString(); GlobalData.Instance.periodicModeSeed = seed; var ea = new PeriodHashEventArgs(); ea.Seed = seed; ea.Success = true; OnPeriodHashObtained(ea); } } yield return(null); }
void OnPeriodHashObtained(object sender, PeriodHashEventArgs e) { if (e.Success) { GlobalData.Instance.periodicModeSeed = e.Seed; Message.Text = I2.Loc.ScriptLocalization.Get("SeedObtained"); CameraFade.StartAlphaFade(Color.white, false, 1f, 2f, () => { PersistentUtility.Instance.GoToScene("GameScene"); }); } else { var animation = LoadingAnimation.GetComponent <dfSpriteAnimation>(); animation.Stop(); LoadingAnimation.IsVisible = false; Message.Text = I2.Loc.ScriptLocalization.Get("ErrorTryLater"); CameraFade.StartAlphaFade(Color.white, false, 1f, 2f, () => { PersistentUtility.Instance.GoToScene("MainMenuScene"); }); } }