void OnDifficultySelected(GameSave.EGameDifficultyType difficulty) { var saveFileManager = ((object)screenManager.AsDynamic().SaveFileManager).AsDynamic(); int saveFileIndex = saveFileManager.GetNextSaveIndex(); var save = GameSave.CreateNewSave(saveFileIndex, difficulty); GameConfigSave configSave = saveFileManager.ConfigSave; var gameplayScreen = (GameScreen)GamePlayScreenType.CreateInstance(false, save, configSave); var loadMethod = LoadingScreenType.GetPublicStaticMethod("Load"); loadMethod.InvokeStatic(screenManager, true, PlayerIndex.One, new[] { gameplayScreen }); }