public void ExitScreen() { if (TransitionOffTime == TimeSpan.Zero) { ScreenManager.RemoveScreen(this); } else { IsExiting = true; } }
private void drawTestingMainMenuButtons(bool canRun) { if (Button.doButton(8801, 634, 200, 225, 23, "New Test Session", buttonColor) && canRun) { ExitScreen(); resetOS(); if (!Settings.soundDisabled) { ScreenManager.playAlertSound(); } var os = new OS(); ScreenManager.AddScreen(os, ScreenManager.controllingPlayer); os.delayer.RunAllDelayedActions(); os.threadedSaveExecute(); ScreenManager.RemoveScreen(os); OS.WillLoadSave = true; resetOS(); ScreenManager.AddScreen(new OS(), ScreenManager.controllingPlayer); } if (Button.doButton(8803, 634, 225, 225, 23, "New Entropy Accelerated Session", buttonColor) && canRun) { ExitScreen(); resetOS(); if (!Settings.soundDisabled) { ScreenManager.playAlertSound(); } var os1 = new OS(); os1.SaveGameUserName = "******"; os1.SaveUserAccountName = "entropyTest"; ScreenManager.AddScreen(os1, ScreenManager.controllingPlayer); os1.Flags.AddFlag("TutorialComplete"); os1.delayer.RunAllDelayedActions(); os1.threadedSaveExecute(); ScreenManager.RemoveScreen(os1); OS.WillLoadSave = true; resetOS(); Settings.initShowsTutorial = false; var os2 = new OS(); ScreenManager.AddScreen(os2, ScreenManager.controllingPlayer); MissionFunctions.runCommand(0, "EntropyFastFowardSetup"); os2.delayer.Post(ActionDelayer.Wait(1.0), () => Game1.GetSingleton().IsMouseVisible = true); } if (Button.doButton(8806, 634, 250, 225, 23, "Run Test Suite", buttonColor)) { testSuiteResult = TestSuite.TestSaveLoadOnFile(ScreenManager); } if (Button.doButton(8809, 634, 275, 225, 23, "Export Animation", buttonColor)) { var TitleFill = new Rectangle(0, 0, 300, 100); AnimatedSpriteExporter.ExportAnimation("OutNowAnim", "OutNow", TitleFill.Width, TitleFill.Height, 24f, 40f, GuiData.spriteBatch.GraphicsDevice, t => new OS { highlightColor = new Color(166, byte.MaxValue, 215) }.timer += t, (sb, dest) => { sb.Draw(Utils.white, dest, new Color(13, 13, 13)); FlickeringTextEffect.DrawFlickeringText(TitleFill, "OUT NOW", 8f, 0.7f, titleFont, null, new Color(216, 216, 216)); }, 1); } if (Button.doButton(8812, 634, 300, 225, 23, "New CSEC Accel Session", buttonColor) && canRun) { ExitScreen(); resetOS(); if (!Settings.soundDisabled) { ScreenManager.playAlertSound(); } var os1 = new OS(); ScreenManager.AddScreen(os1, ScreenManager.controllingPlayer); os1.Flags.AddFlag("TutorialComplete"); os1.delayer.RunAllDelayedActions(); os1.threadedSaveExecute(); ScreenManager.RemoveScreen(os1); OS.WillLoadSave = true; resetOS(); Settings.initShowsTutorial = false; var os2 = new OS(); ScreenManager.AddScreen(os2, ScreenManager.controllingPlayer); MissionFunctions.runCommand(0, "CSECFastFowardSetup"); os2.delayer.Post(ActionDelayer.Wait(1.0), () => Game1.GetSingleton().IsMouseVisible = true); } if (testSuiteResult == null) { return; } TextItem.doFontLabel(new Vector2(635f, 325f), Utils.SuperSmartTwimForWidth(testSuiteResult, 600, GuiData.tinyfont), GuiData.tinyfont, testSuiteResult.Length > 250 ? Utils.AddativeRed : Utils.AddativeWhite, float.MaxValue, float.MaxValue); }