private void AddMetricsSetMenu() { var metricsSetWindow = new Parchment_Info_Window(); if (Global.gameSettings.General.Metrics == Metrics_Settings.On) { metricsSetWindow.set_text( @"Thank you for participating. Metrics collection can be turned on or off at any time from the options menu."); } else { metricsSetWindow.set_text( @"If you change your mind, metrics collection can be turned on or off at any time from the options menu."); } metricsSetWindow.size = new Vector2(184, 64); metricsSetWindow.loc = (new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) - metricsSetWindow.size) / 2; metricsSetWindow.stereoscopic = Config.TITLE_CHOICE_DEPTH - 1; var metricsSetMenu = new ConfirmationMenu(metricsSetWindow); metricsSetMenu.Confirmed += metricsSetMenu_Close; AddMenu(metricsSetMenu); }
// Chapter selected void worldmapMenu_ChapterSelected(object sender, EventArgs e) { var worldmapMenu = sender as WorldmapMenu; // Select chapter if (Constants.WorldMap.HARD_MODE_BLOCKED.Contains( MenuData.ChapterId) && Global.game_system.hard_mode) { Global.game_system.Difficulty_Mode = Difficulty_Modes.Normal; worldmapMenu.RefreshDataPanel(); if (Global.game_system.Style != Mode_Styles.Classic) { Global.game_system.play_se(System_Sounds.Cancel); var hardModeBlockWindow = new Parchment_Info_Window(); hardModeBlockWindow.set_text(@"This chapter does not yet have hard mode data, and must be loaded in normal mode. Sorry!"); hardModeBlockWindow.size = new Vector2(160, 64); hardModeBlockWindow.loc = new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) / 2 - hardModeBlockWindow.size / 2; var hardModeBlockedMenu = new ConfirmationMenu(hardModeBlockWindow); hardModeBlockedMenu.Confirmed += hardModeBlockedMenu_Close; AddMenu(hardModeBlockedMenu); return; } } if (MenuData.IsSkippingGaiden(MenuData.ChapterId)) { Global.game_system.play_se(System_Sounds.Confirm); var gaidenSkippedWindow = new Parchment_Info_Window(); gaidenSkippedWindow.set_text(@"Proceeding with this chapter will skip available sidequests or alternate routes."); gaidenSkippedWindow.size = new Vector2(152, 64); gaidenSkippedWindow.loc = new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) / 2 - gaidenSkippedWindow.size / 2; var gaidenSkippedMenu = new ConfirmationMenu(gaidenSkippedWindow); gaidenSkippedMenu.Confirmed += gaidenSkippedMenu_Close; AddMenu(gaidenSkippedMenu); return; } Global.game_system.play_se(System_Sounds.Confirm); SelectChapter(worldmapMenu); }
protected void select_chapter_fade() { Phase = Worldmap_Phases.Controls_Fade; Fade_Timer = MenuData.AutoSelectChapter ? 1 : Constants.WorldMap.WORLDMAP_CONTROLS_FADE_TIME; if (IsBlockedHardMode(MenuData.ChapterId)) { Hard_Mode_Blocked_Window = new Parchment_Info_Window(); Hard_Mode_Blocked_Window.set_text(@"This chapter does not yet have hard mode data, and will be loaded in normal mode. Sorry!"); Hard_Mode_Blocked_Window.size = new Vector2(160, 64); Hard_Mode_Blocked_Window.loc = new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) / 2 - Hard_Mode_Blocked_Window.size / 2; Global.game_system.Difficulty_Mode = Difficulty_Modes.Normal; } }
// Open save menu protected void AddSaveMenu() { Global.game_temp.map_save_call = false; bool overwrite = Global.current_save_info.map_save_exists; Parchment_Confirm_Window saveConfirmWindow; if (overwrite) { saveConfirmWindow = new Parchment_Confirm_Window(); saveConfirmWindow.set_text("Overwrite checkpoint?"); saveConfirmWindow.add_choice("Yes", new Vector2(16, 16)); saveConfirmWindow.add_choice("No", new Vector2(56, 16)); saveConfirmWindow.size = new Vector2(112, 48); } else { saveConfirmWindow = new Parchment_Info_Window(); saveConfirmWindow.set_text("Checkpoint Saved."); saveConfirmWindow.size = new Vector2(112, 32); } saveConfirmWindow.loc = new Vector2(Config.WINDOW_WIDTH, Config.WINDOW_HEIGHT) / 2 - saveConfirmWindow.size / 2; var saveConfirmMenu = new ConfirmationMenu(saveConfirmWindow); if (overwrite) { saveConfirmMenu.Confirmed += saveConfirmMenu_OverwriteConfirmed; saveConfirmMenu.Canceled += menu_Closed; } else { saveConfirmMenu.Confirmed += saveConfirmMenu_Close; MenuHandler.SetupSave(); } AddMenu(saveConfirmMenu); }
private void update_worldmap_command() { switch (Phase) { case Worldmap_Phases.Fade_In: switch (Timer) { default: // If autoselecting a chapter with no world map event if (MenuData.AutoSelectChapter && GetWorldmapEvent() == null) { // If hard mode is blocked, nevermind if (!IsBlockedHardMode(MenuData.ChapterId)) { MenuManager = null; start_chapter(); break; } } if (Fade_Timer > 0) { Fade_Timer--; } if (Fade_Timer == Constants.WorldMap.WORLDMAP_FADE_TIME / 4) { if (!MenuData.AutoSelectChapter) { Global.Audio.PlayBgm(Constants.WorldMap.WORLDMAP_THEME); } } if (Fade_Timer == 0) { Phase = Worldmap_Phases.Command_Process; } break; } break; case Worldmap_Phases.Command_Process: if (MenuData.AutoSelectChapter) { select_chapter_fade(); } break; case Worldmap_Phases.Controls_Fade: if (Hard_Mode_Blocked_Window != null) { Hard_Mode_Blocked_Window.update(); if (Hard_Mode_Blocked_Window.is_ready) { if (Hard_Mode_Blocked_Window.selected_index().IsSomething) { Global.game_system.play_se(System_Sounds.Confirm); Hard_Mode_Blocked_Window = null; } } } else { if (Fade_Timer > 0) { Fade_Timer--; MenuOffset += new Vector2(-1, 0); } if (Fade_Timer == 0 && !scrolling) { MenuManager = null; start_chapter_worldmap_event(); } } break; case Worldmap_Phases.Worldmap_Event: if (!Global.game_system.is_interpreter_running) { Phase = Worldmap_Phases.Fade_Out; Fade_Timer = Constants.WorldMap.WORLDMAP_FADE_TIME; Global.Audio.BgmFadeOut(Constants.WorldMap.WORLDMAP_FADE_TIME); } break; case Worldmap_Phases.Fade_Out: if (Fade_Timer > 0) { Fade_Timer--; } if (Fade_Timer == 0) { start_chapter(); } break; case Worldmap_Phases.Return_To_Title: if (Fade_Timer > 0) { Fade_Timer--; } if (Fade_Timer == 0) { Global.scene_change("Scene_Title_Load"); MenuManager = null; } break; } }