public static void Run() { Running = true; State.Clock.Start(); bool reallyDone = false; while (!reallyDone) { WindowManager.MainWindow?.Run(); if (IsRerun) { RerunFunction?.Invoke(); IsRerun = false; RerunFunction = null; } else { reallyDone = true; } } Running = false; State.Clock.Stop(); TextureManager.Cleanup(); SoundManager.Cleanup(); }
internal static void ReRun(RerunCallback callback) { RerunFunction = callback; IsRerun = true; }