private void OnRecordingComplete() { SimulationGlobals.SetRunState(RunState.Stopped); Constants.spaceChemGame.StopVideoCapture(); // Instead of properly showing the destination dialog, just instantiate it and pretend that // the Save to Desktop button was clicked on it. GameScreen.RemoveTopmostScreen(); RecordingDestinationDialog destinationDialog = new RecordingDestinationDialog(currentlyCapturedVideo, score); destinationDialog.OnSaveToDesktopClickBackdoor(); }
private void SetSpeedIf(SimulatorSpeed speed, bool active) { if (active) { if (KeyboardHelper.IsControlPressed()) { speed = SimulatorSpeed.SuperFastForward; } SimulationGlobals.SetSimulatorSpeed(speed); selectedSpeed = speed; } }
public void DoCollisionChecks() { // We want to bypass the first "normal" check because we're forcing new ones that replace it. if (SimulationGlobals.partialCycle == 0 && !forced) { return; } // Don't bother with duplicate checks if the simulation is already paused because of an earlier collision. if (SimulationGlobals.GetRunState() == RunState.Running) { OriginalDoCollisionChecks(); } }