private static void DrawInGameMenu(GameModel model, Painter painter, Graphics g, Font font) { ScreenModelTitleMenu t = model.SMTitleMenu; String textSaveMenu = model.ReferenceData.MenuInGameToText[MenuOptionInGame.SaveAndMenu]; DrawMenuOption(model, painter, g, font, textSaveMenu, t.InGameMenuSaveAndMenuUIE.LogicalPosition, t.InGameMenuSaveAndMenuUIE.IsMousedOver); String textSaveExit = model.ReferenceData.MenuInGameToText[MenuOptionInGame.SaveAndExit]; DrawMenuOption(model, painter, g, font, textSaveExit, t.InGameMenuSaveAndExitUIE.LogicalPosition, t.InGameMenuSaveAndExitUIE.IsMousedOver); String textReturn = model.ReferenceData.MenuInGameToText[MenuOptionInGame.Return]; DrawMenuOption(model, painter, g, font, textReturn, t.InGameMenuReturnUIE.LogicalPosition, t.InGameMenuReturnUIE.IsMousedOver); }
internal static void ApplyInput(GameModel model, UserInput userInput) { ScreenModelTitleMenu t = model.SMTitleMenu; switch (model.World.StatePrimary) { case GameStatePrimary.GameInProgressMenu: AcceptInputInProgressMenu(model, t, userInput); break; case GameStatePrimary.LoadingResources: break; // Don't accept any input. case GameStatePrimary.MainMenu: AcceptInputMainMenu(model, t, userInput); break; } }
private static void DrawMainMenu(GameModel model, Painter painter, Graphics g, Font font) { ScreenModelTitleMenu t = model.SMTitleMenu; String textNewGame = model.ReferenceData.MenuMainToText[MenuOptionPrimary.NewGame]; DrawMenuOption(model, painter, g, font, textNewGame, t.MainNewGameUIE.LogicalPosition, t.MainNewGameUIE.IsMousedOver); String textLoadGame = model.ReferenceData.MenuMainToText[MenuOptionPrimary.LoadGame]; DrawMenuOption(model, painter, g, font, textLoadGame, t.MainLoadGameUIE.LogicalPosition, t.MainLoadGameUIE.IsMousedOver); String textCredits = model.ReferenceData.MenuMainToText[MenuOptionPrimary.Credits]; DrawMenuOption(model, painter, g, font, textCredits, t.MainCreditsUIE.LogicalPosition, t.MainCreditsUIE.IsMousedOver); String textExitGame = model.ReferenceData.MenuMainToText[MenuOptionPrimary.ExitGame]; DrawMenuOption(model, painter, g, font, textExitGame, t.MainExitGameUIE.LogicalPosition, t.MainExitGameUIE.IsMousedOver); }
private static void AcceptInputMainMenu(GameModel model, ScreenModelTitleMenu t, UserInput userInput) { if ((t.MainNewGameUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.N)) { model.NewGame(); } if ((t.MainLoadGameUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.L)) { model.LoadGame(); } if ((t.MainExitGameUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.L)) { model.ExitGame(); } }
public GameModel() { PrepareDataLoader(); m_gameWorld = new GameWorld(this); m_referenceData = new GameReferenceData(); m_gameConfig = new GameConfig(this); m_tickUpdater = new GameTickUpdater(this); m_smCharacterDetail = new ScreenModelCharacterDetail(this); m_smCredits = new ScreenModelCredits(this); m_smPressYourLuck = new ScreenModelPressYourLuck(this); m_smTitleMenu = new ScreenModelTitleMenu(this); GameCamera.InitializeViewCamera(Camera); TimeWaveManager.InitializeGameModel(this); World.StatePrimary = GameStatePrimary.LoadingResources; }
private static void AcceptInputInProgressMenu(GameModel model, ScreenModelTitleMenu t, UserInput userInput) { if ((t.InGameMenuReturnUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.R) || userInput.IsKeyDownWithDelay(Keys.Escape)) { model.ReturnToGame(); } if ((t.InGameMenuSaveAndMenuUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.M) || userInput.IsKeyDownWithDelay(Keys.S)) { model.SaveGameAndMenu(); } if ((t.InGameMenuSaveAndExitUIE.IsMousedOver && userInput.IsKeyDownWithDelay(Keys.LButton)) || userInput.IsKeyDownWithDelay(Keys.E) || userInput.IsKeyDownWithDelay(Keys.X)) { model.SaveGameAndExit(); } }