A stable modding interface between Techblox and mods https://mod.exmods.org/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
1.5KB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Svelto.Tasks.Lean;
  7. using Svelto.Tasks.ExtraLean;
  8. namespace GamecraftModdingAPI.Tasks
  9. {
  10. public static class Scheduler
  11. {
  12. public static Svelto.Tasks.Lean.Unity.UpdateMonoRunner leanRunnerUI
  13. {
  14. get
  15. {
  16. return RobocraftX.Schedulers.Lean.UIScheduler;
  17. }
  18. }
  19. public static Svelto.Tasks.ExtraLean.Unity.UpdateMonoRunner extraLeanRunnerUI
  20. {
  21. get
  22. {
  23. return RobocraftX.Schedulers.ExtraLean.UIScheduler;
  24. }
  25. }
  26. public static readonly Svelto.Tasks.ExtraLean.Unity.UpdateMonoRunner extraLeanRunner = new Svelto.Tasks.ExtraLean.Unity.UpdateMonoRunner("GamecraftModdingAPIExtraLean");
  27. public static readonly Svelto.Tasks.Lean.Unity.UpdateMonoRunner leanRunner = new Svelto.Tasks.Lean.Unity.UpdateMonoRunner("GamecraftModdingAPILean");
  28. public static void Schedule(ISchedulable toRun, bool extraLean = false)
  29. {
  30. if (extraLean)
  31. {
  32. toRun.Run().RunOn(extraLeanRunner);
  33. }
  34. else
  35. {
  36. toRun.Run().RunOn(leanRunner);
  37. }
  38. }
  39. public static void Dispose()
  40. {
  41. leanRunner.Stop();
  42. extraLeanRunner.Stop();
  43. leanRunner.Dispose();
  44. extraLeanRunner.Dispose();
  45. }
  46. }
  47. }