private void InitializeModes(CreateModeDelegate defaultTitleScreen, CreateModeDelegate defaultOptionsScreen) { PreviousMode = null; CurrentMode = null; ReturnMode = null; DefaultTitleScreenFactory = defaultTitleScreen; DefaultOptionsScreenFactory = defaultOptionsScreen; }
private void Initialize(AppOptionsBase options, GraphicsContext gc, CreateModeDelegate defaultTitleScreen, CreateModeDelegate defaultOptionsScreen) { InitializeRunState(); InitializeOptions(options); InitializeGraphics(gc); InitializeTimers(); InitializeModes(defaultTitleScreen, defaultOptionsScreen); InitializeInput(); InitializeRandomGenerator(); }
public void GoToMode(CreateModeDelegate factory) { LastModeChange = UpdateTime; PreviousMode = CurrentMode; NextModeFactory = factory; CurrentMode = null; ReturnMode = null; }
//TODO: GoToThenReturn should not dispose of the original mode. perhaps as an option or another method. public void GoToModeThenReturn(CreateModeDelegate factory, ModeBase returnMode) { LastModeChange = UpdateTime; PreviousMode = CurrentMode; NextModeFactory = factory; CurrentMode = null; ReturnMode = returnMode; }
public AppManager(AppOptionsBase options, GraphicsContext gc, CreateModeDelegate defaultTitleScreen = null, CreateModeDelegate defaultOptionsScreen = null) { Initialize(options, gc, defaultTitleScreen, defaultOptionsScreen); }