private Window_Confirmation FileConfirmWindow( FileSelectedCommandMenu fileCommandMenu, Window_Title_Start_Game startGameMenu, string caption) { var confirmWindow = new Window_Confirmation(); int height = 64; Vector2 loc = fileCommandMenu.SelectedOptionLoc + new Vector2(-8, 0); if (loc.Y > Config.WINDOW_HEIGHT - height) { loc.Y -= height; } confirmWindow.loc = loc; confirmWindow.set_text(caption); confirmWindow.add_choice("Yes", new Vector2(16, 16)); confirmWindow.add_choice("No", new Vector2(56, 16)); int text_width = Font_Data.text_width(caption, Config.CONVO_FONT); text_width = text_width + 16 + (text_width % 8 == 0 ? 0 : (8 - text_width % 8)); confirmWindow.size = new Vector2(Math.Max(88, text_width), 48); confirmWindow.index = 1; confirmWindow.stereoscopic = Config.TITLE_CHOICE_DEPTH; return(confirmWindow); }
private void UnitEditor_Canceled(object sender, EventArgs e) { Global.game_system.play_se(System_Sounds.Cancel); string caption = "Cancel editing?\nChanges will be lost."; var cancelWindow = new Window_Confirmation(); cancelWindow.loc = new Vector2(56, 32); cancelWindow.set_text(caption); cancelWindow.add_choice("Yes", new Vector2(16, 32)); cancelWindow.add_choice("No", new Vector2(56, 32)); cancelWindow.size = new Vector2(104, 64); cancelWindow.index = 1; var cancelMenu = new ConfirmationMenu(cancelWindow); cancelMenu.Confirmed += UnitEditorCancelMenu_Confirmed; cancelMenu.Canceled += menu_Closed; AddMenu(cancelMenu); }
// Selected an item in the map menu private void mapMenu_Selected(object sender, EventArgs e) { var mapMenu = (sender as UnitEditorMapCommandMenu); switch (mapMenu.SelectedOption) { case Unit_Editor_Options.Unit: RemoveTopMenu(); var unitMenu = new Window_Unit_Team(); unitMenu.Status += unitMenu_Status; unitMenu.Closed += unitMenu_Closed; AddMenu(unitMenu); break; case Unit_Editor_Options.Add_Unit: MenuHandler.UnitEditorMapMenuAddUnit(); break; case Unit_Editor_Options.Paste_Unit: MenuHandler.UnitEditorMapMenuPasteUnit(); break; case Unit_Editor_Options.Reinforcements: RemoveTopMenu(); var reinforcementsMenu = new ReinforcementsMenu(ReinforcementData); reinforcementsMenu.Selected += reinforcementsMenu_Selected; reinforcementsMenu.Canceled += menu_ClosedCanceled; AddMenu(reinforcementsMenu); break; case Unit_Editor_Options.Options: RemoveTopMenu(); var settingsTopMenu = new GameplaySettingsTopMenu(false); settingsTopMenu.Selected += SettingsTopMenu_Selected; settingsTopMenu.Closed += menu_ClosedCanceled; settingsTopMenu.AddToManager(new MenuCallbackEventArgs(this.AddMenu, this.menu_Closed)); break; case Unit_Editor_Options.Clear_Units: // Clear Units Vector2 optionLocation = mapMenu.SelectedOptionLocation; var clearUnitsWindow = new Window_Command( optionLocation + new Vector2(8, 24), 80, new List <string> { "Confirm", "Cancel" }); clearUnitsWindow.immediate_index = 1; var clearUnitsCommandMenu = new CommandMenu(clearUnitsWindow); clearUnitsCommandMenu.Selected += clearUnitsCommandMenu_Selected; clearUnitsCommandMenu.Canceled += confirmMenu_Canceled; AddMenu(clearUnitsCommandMenu); break; case Unit_Editor_Options.Mirror_Units: // Mirror Units optionLocation = mapMenu.SelectedOptionLocation; var mirrorUnitsWindow = new Window_Command( optionLocation + new Vector2(8, 24), 80, new List <string> { "Confirm", "Cancel" }); mirrorUnitsWindow.immediate_index = 1; var mirrorUnitsCommandMenu = new CommandMenu(mirrorUnitsWindow); mirrorUnitsCommandMenu.Selected += mirrorUnitsCommandMenu_Selected; mirrorUnitsCommandMenu.Canceled += confirmMenu_Canceled; AddMenu(mirrorUnitsCommandMenu); break; case Unit_Editor_Options.Playtest: MenuHandler.UnitEditorMapMenuPlaytest(); break; case Unit_Editor_Options.Revert: MenuHandler.UnitEditorMapMenuRevert(); break; case Unit_Editor_Options.Save: MenuHandler.UnitEditorMapMenuSave(); break; case Unit_Editor_Options.Quit: // Quit optionLocation = mapMenu.SelectedOptionLocation; var quitConfirmWindow = new Window_Confirmation(); int height = 48; quitConfirmWindow.loc = optionLocation + new Vector2(0, 24); if (quitConfirmWindow.loc.Y + height > Config.WINDOW_HEIGHT) { quitConfirmWindow.loc = optionLocation + new Vector2(0, -40); } quitConfirmWindow.set_text("Are you sure?"); quitConfirmWindow.add_choice("Yes", new Vector2(16, 16)); quitConfirmWindow.add_choice("No", new Vector2(56, 16)); quitConfirmWindow.size = new Vector2(88, height); quitConfirmWindow.index = 1; var quitConfirmMenu = new ConfirmationMenu(quitConfirmWindow); quitConfirmMenu.Confirmed += quitConfirmMenu_Confirmed; quitConfirmMenu.Canceled += confirmMenu_Canceled; AddMenu(quitConfirmMenu); break; } }
void reinforcementsOptionsMenu_Selected(object sender, EventArgs e) { var reinforcementsOptionsMenu = (sender as CommandMenu); Global.game_system.play_se(System_Sounds.Confirm); switch (reinforcementsOptionsMenu.SelectedIndex) { // Edit case 0: RemoveTopMenu(); var reinforcementsMenu = (Menus.Peek() as ReinforcementsMenu); int index = reinforcementsMenu.Index - 1; Menus.Clear(); MenuHandler.UnitEditorMapMenuEditReinforcement(index); break; // Add case 1: // Paste case 2: RemoveTopMenu(); reinforcementsMenu = (Menus.Peek() as ReinforcementsMenu); index = reinforcementsMenu.Index; if (ReinforcementData.Count == 0) { index = 0; } if (reinforcementsOptionsMenu.SelectedIndex == 1) { // Add MenuHandler.UnitEditorMapMenuAddReinforcement(index); } else { // Paste MenuHandler.UnitEditorMapMenuPasteReinforcement(index); } reinforcementsMenu.Refresh(index + 1); break; // Delete case 3: var deleteReinforcementWindow = new Window_Confirmation(); deleteReinforcementWindow.loc = new Vector2(Config.WINDOW_WIDTH - 96, 32); deleteReinforcementWindow.set_text("Delete this\nreinforcement?"); deleteReinforcementWindow.add_choice("Yes", new Vector2(8, 32)); deleteReinforcementWindow.add_choice("No", new Vector2(48, 32)); deleteReinforcementWindow.size = new Vector2(88, 64); deleteReinforcementWindow.index = 1; var deleteReinforcementMenu = new ConfirmationMenu(deleteReinforcementWindow); deleteReinforcementMenu.Confirmed += deleteReinforcementMenu_Confirmed; deleteReinforcementMenu.Canceled += confirmMenu_Canceled; AddMenu(deleteReinforcementMenu); break; } }
void mainMenu_Selected(object sender, EventArgs e) { var mainMenu = sender as Window_Title_Main_Menu; switch (mainMenu.SelectedOption) { case Main_Menu_Selections.Resume: MenuHandler.TitleResume(); break; case Main_Menu_Selections.Start_Game: Global.game_system.play_se(System_Sounds.Confirm); mainMenu.HideMenus(); AddStartGameMenu(); break; case Main_Menu_Selections.Options: Global.game_system.play_se(System_Sounds.Confirm); var settingsTopMenu = new SettingsTopMenu(); settingsTopMenu.Selected += SettingsTopMenu_Selected; settingsTopMenu.Closed += menu_Closed; settingsTopMenu.AddToManager(new MenuCallbackEventArgs(this.AddMenu, this.menu_Closed)); break; #if !MONOGAME && DEBUG case Main_Menu_Selections.Test_Battle: Global.game_system.play_se(System_Sounds.Confirm); Global.game_state.reset(); Global.game_map = new Game_Map(); Global.game_temp = new Game_Temp(); Global.game_battalions = new Game_Battalions(); Global.game_actors = new Game_Actors(); var testBattleMenu = new Windows.Map.Window_Test_Battle_Setup(); testBattleMenu.Confirm += testBattleMenu_Confirm; testBattleMenu.Closed += menu_Closed; AddMenu(testBattleMenu); break; #endif case Main_Menu_Selections.Extras: Global.game_system.play_se(System_Sounds.Confirm); mainMenu.HideMenus(); Global.game_state.reset(); Global.game_map = new Game_Map(); Global.game_temp = new Game_Temp(); Global.game_battalions = new Game_Battalions(); Global.game_actors = new Game_Actors(); var extrasMenu = new ExtrasMenu(); extrasMenu.Selected += ExtrasMenu_Selected; extrasMenu.Closed += menu_Closed; extrasMenu.AddToManager(new MenuCallbackEventArgs(this.AddMenu, this.menu_Closed)); break; case Main_Menu_Selections.Quit: string caption = "Are you sure you\nwant to quit?"; var quitWindow = new Window_Confirmation(); quitWindow.set_text(caption); quitWindow.add_choice("Yes", new Vector2(16, 32)); quitWindow.add_choice("No", new Vector2(56, 32)); int text_width = Font_Data.text_width(caption, Config.CONVO_FONT); text_width = text_width + 16 + (text_width % 8 == 0 ? 0 : (8 - text_width % 8)); quitWindow.size = new Vector2(Math.Max(88, text_width), 64); quitWindow.loc = (new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) - quitWindow.size) / 2; quitWindow.stereoscopic = Config.TITLE_CHOICE_DEPTH; var quitMenu = new ConfirmationMenu(quitWindow); quitMenu.Confirmed += quitMenu_Confirmed; quitMenu.Canceled += menu_Closed; AddMenu(quitMenu); break; } }