/// <summary> /// Adds a new screen to the screen manager. /// </summary> public void AddScreen(GameScreen screen) { screen.ScreenManager = this; screen.DebugCanvas = _debugCanvas; screen.TxtDebug = _txtDebug; screen.Initialize(); //Tell the screen to load content. screen.LoadContent(); _screens.Add(screen); IDemoScreen demoScreen = screen as IDemoScreen; if (demoScreen != null && screen.firstRun) { AddScreen(new PauseScreen(demoScreen.GetTitle(), demoScreen.GetDetails())); screen.firstRun = false; } }
public void AddMainMenuItem(string name, GameScreen screen, bool isExitItem) { _mainMenuItems.Add(_id++, new MenuItem(screen, isExitItem)); MenuEntries.Add(name); }
public void AddMainMenuItem(string name, GameScreen screen) { AddMainMenuItem(name, screen, false); }
/// <summary> /// Removes a screen from the screen manager. You should normally /// use <see cref="GameScreen"/>.ExitScreen instead of calling this directly, so /// the screen can gradually transition off rather than just being /// instantly removed. /// </summary> public void RemoveScreen(GameScreen screen) { screen.UnloadContent(); _screens.Remove(screen); _screensToUpdate.Remove(screen); screen.Dispose(); }
public void AddMainMenuItem(string name, GameScreen screen, bool isExitItem) { _mainMenuItems.Add(_id++, new MenuItem(screen, isExitItem)); MenuEntries.Add(name); }
public void AddMainMenuItem(string name, GameScreen screen) { AddMainMenuItem(name, screen, false); }