public void RunDemo() { var previouslyTraining = evolutionAlgorithm.RunState == RunState.Running; if (previouslyTraining) { PauseTraining(); } var daBes = (IBlackBox)evolutionAlgorithm.CurrentChampGenome.CachedPhenome; var demoMode = new TetrisEvaluator(gameOrchestrator, true); lock (this) demoing = true; if (previouslyTraining) { StartTraining(); } demoMode.Evaluate(daBes); lock (this) demoing = false; }