protected override void Draw(GameTime gameTime) { switch (_gameState) { case GameStateEnum.Game: if (Session != null) { Session.Draw(spriteBatch); } else { GraphicsDevice.Clear(Color.Black); } Hud.Draw(spriteBatch); GuiManager.Draw(spriteBatch); break; case GameStateEnum.Menu: MenuState.Draw(spriteBatch); break; case GameStateEnum.Intro: Intro.Draw(spriteBatch); break; } if (Console.Enabled) { Console.Draw(spriteBatch); } }
protected override void Update(GameTime gameTime) { base.Update(gameTime); Input.Update(gameTime); switch (_gameState) { case GameStateEnum.Game: if (Input.GetInput(Inputs.QuickLoad, InputState.Pressed)) { if (LoadSession("quicksave.sav")) { Hud.Chat("Loading from quick save"); return; } } else if (Input.GetInput(Inputs.QuickSave, InputState.Pressed)) { SaveSession("quicksave.sav"); Hud.Chat("Quick saving..."); } if (Session != null) { Session.Update(gameTime); } Hud.Update(gameTime); if (Input.GetInput(Inputs.Pause, InputState.Pressed)) { var g = GuiManager.GetGuiOfType <Gui.MiniMenu>(); if (g == null) { GuiManager.Add(new Gui.MiniMenu()); } else { g.Closing = true; } } GuiManager.Update(gameTime); break; case GameStateEnum.Menu: MenuState.Update(gameTime); break; case GameStateEnum.Intro: Intro.Update(gameTime); break; } Console.Update(gameTime); }