private void SelectResolution(MenuPageEventArgs e) { if (_resolution960Button != _currentButton && _resolution960Button.State == ButtonStates.Selected) { _resolution960Button.SelectNoEvent(); } if (_resolution1280Button != _currentButton && _resolutionDefaultButton != _currentButton && _resolution1280Button.State == ButtonStates.Selected) { _resolution1280Button.SelectNoEvent(); } if (_resolution1600Button != _currentButton && _resolution1600Button.State == ButtonStates.Selected) { _resolution1600Button.SelectNoEvent(); } if (_resolution1920Button != _currentButton && _resolution1920Button.State == ButtonStates.Selected) { _resolution1920Button.SelectNoEvent(); } if ((_resolutionDefaultButton == _currentButton || _defaultsButton == _currentButton) && !(_resolution1280Button.State == ButtonStates.Selected)) { _resolution1280Button.SelectNoEvent(); } }
private void ResetPreferences(MenuPageEventArgs e) { var args = e as ResetPreferencesEventArgs; if (args == null) { return; } if (args.Type == PreferenceTypes.All) { ResolutionChanged(new ResolutionChangeEventArgs(PreferenceValidator.DefaultResolution)); _resourceManager.ResetPreferenceData(); } else if (args.Type == PreferenceTypes.Keybinds) { _resourceManager.ResetPreferenceKeybinds(); ((OptionsMenuPage)_menuPages[MenuPageNames.Options]).UpdateWithPreferenceData(DataHelper.PreferenceData); } else if (args.Type == PreferenceTypes.Resolution) { ResolutionChange(new ResolutionChangeEventArgs(PreferenceValidator.DefaultResolution)); } else if (args.Type == PreferenceTypes.Volume) { _resourceManager.UpdatePreferenceVolumeData(PreferenceValidator.DefaultVolume); } }
private void ChangeResolution(MenuPageEventArgs e) { var args = e as ResolutionChangeEventArgs; if (e == null) { return; } if (args.Resolution == Resolutions.r960x540) { if (graphics.PreferredBackBufferWidth != 960) { graphics.PreferredBackBufferWidth = 960; } if (graphics.PreferredBackBufferHeight != 540) { graphics.PreferredBackBufferHeight = 540; } } else if (args.Resolution == Resolutions.r1280x720) { if (graphics.PreferredBackBufferWidth != 1280) { graphics.PreferredBackBufferWidth = 1280; } if (graphics.PreferredBackBufferHeight != 720) { graphics.PreferredBackBufferHeight = 720; } } else if (args.Resolution == Resolutions.r1600x900) { if (graphics.PreferredBackBufferWidth != 1600) { graphics.PreferredBackBufferWidth = 1600; } if (graphics.PreferredBackBufferHeight != 900) { graphics.PreferredBackBufferHeight = 900; } } else if (args.Resolution == Resolutions.r1920x1080) { if (graphics.PreferredBackBufferWidth != 1920) { graphics.PreferredBackBufferWidth = 1920; } if (graphics.PreferredBackBufferHeight != 1080) { graphics.PreferredBackBufferHeight = 1080; } } graphics.ApplyChanges(); }
private void StartOrLoadGame(MenuPageEventArgs e) { // at this point we would already have the data loaded var args = e as StartOrLoadEventArgs; if (args == null) { return; } var fileNumber = args.FileNumber; DataHelper.CurrentFileNumber = fileNumber; var data = DataHelper.GetDataFromFileNumber(fileNumber); // the save data will have the proper information even it is a new game InitiateTransition( new RoamTransition() { Fade = true, DestinationCoords = new Vector2(data.PlayerLocation.X, data.PlayerLocation.Y), DestinationLevel = data.PlayerLevel, DestinationRegion = data.PlayerRegion, DestinationZone = data.PlayerZone, }); }
private void OnEraseFile(MenuPageEventArgs e) { _dialogOpen = true; var dialog = new MenuDialog(); dialog.AddTextLine("Are you sure?"); var yesButton = new MenuButton(new Vector2(0, 0), "Erase", ButtonStyles.Dialog, new EraseFileEventArgs(_fileHighlightIndex)); yesButton.OnSelected += RaiseEraseFileEvent; yesButton.OnSelected += ResetFileButtons; yesButton.OnSelected += RaiseCloseDialogEvent; var noButton = new MenuButton(new Vector2(0, 0), "Cancel", ButtonStyles.Dialog, new CloseDialogEventArgs()); noButton.OnSelected += RaiseCloseDialogEvent; noButton.OnSelected += ResetFileButtons; yesButton.LeftButton = noButton; yesButton.RightButton = noButton; noButton.LeftButton = yesButton; noButton.RightButton = yesButton; dialog.AddButton(yesButton); dialog.AddButton(noButton); _currentDialog = dialog; _currentButton.DeHighlight(); _currentButton = yesButton; _currentButton.Highlight(); }
private void OnSaveFile(MenuPageEventArgs e) { _dialogOpen = true; var dialog = new MenuDialog(); dialog.AddTextLine("Saving..."); _currentDialog = dialog; }
private void OpenDialog(MenuPageEventArgs e) { var args = e as OpenDialogEventArgs; if (args == null) { return; } }
protected void RaiseOpenDialogEvent(MenuPageEventArgs e) { if (e == null) { return; } OpenDialog(e); }
protected void RaiseSwitchPageEvent(MenuPageEventArgs e) { if (e == null) { return; } SwitchPage(e); }
protected void RaiseEraseFileEvent(MenuPageEventArgs e) { if (e == null) { return; } EraseFile(e); }
protected void RaisePreferenceResetEvent(MenuPageEventArgs e) { if (e == null) { return; } ResetPreferences(e); }
protected void RaiseResumeGameEvent(MenuPageEventArgs e) { if (e == null) { return; } ResumeGame(e); }
protected void RaiseVolumeChangeEvent(MenuPageEventArgs e) { if (e == null) { return; } VolumeChange(e); }
protected void RaiseResolutionChangeEvent(MenuPageEventArgs e) { if (e == null) { return; } ResolutionChange(e); }
protected void RaiseKeybindChangeEvent(MenuPageEventArgs e) { if (e == null) { return; } KeybindChange(e); }
protected void RaiseExitGameEvent(MenuPageEventArgs e) { if (e == null) { return; } ExitGame(e); }
public MenuButton(Vector2 location, string text, ButtonStyles style, MenuPageEventArgs args, ButtonType type) { _location = location; _text = text; _style = style; _args = args; _type = type; _state = ButtonStates.Enabled; _animator = new Animator(ButtonAnimator.GetAnimationsFromStyle(_style), (int)ButtonStates.Enabled, ButtonAnimator.GetImageSizeFromStyle(_style)); }
private void EraseFile(MenuPageEventArgs e) { var args = e as EraseFileEventArgs; if (args == null) { return; } _resourceManager.EraseFile(args.FileNumber); }
private void ExitGame(MenuPageEventArgs e) { var args = e as ExitGameEventArgs; if (args == null) { return; } BeginExit(args); }
private void VolumeChange(MenuPageEventArgs e) { var args = e as VolumeChangeEventArgs; if (args == null) { return; } _resourceManager.UpdatePreferenceVolumeData(args.Up); }
private void ExitGame(MenuPageEventArgs e) { var args = e as ExitGameEventArgs; if (args == null) { return; } _resourceManager.Shutdown(); this.Exit(); }
private void ResolutionChange(MenuPageEventArgs e) { var args = e as ResolutionChangeEventArgs; if (args == null) { return; } ResolutionChanged(args); _resourceManager.UpdatePreferenceResolutionData(args.Resolution); }
private void KeybindChange(MenuPageEventArgs e) { var args = e as KeybindChangeEventArgs; if (args == null) { return; } _requestKeybindChange = true; _functionToChange = args.Function; }
private void CloseDialog(MenuPageEventArgs e) { var args = e as CloseDialogEventArgs; if (args == null) { return; } // leave it to the menus to highlight the proper button // really doesn't matter if buttons behind highlight slightly before }
private void ResumeGame(MenuPageEventArgs e) { var args = e as ResumeGameEventArgs; if (args == null) { return; } InitiateTransition(new StateTransition() { Fade = false, DestinationState = GameStates.Roam }); }
private void SwitchMenuPage(MenuPageEventArgs e) { var args = e as SwitchPageEventArgs; if (args == null) { return; } foreach (var button in _activeMenuPage.Buttons) { button.FadeOut(); } _switchPages = true; _switchPageArgs = args; }
private void OpenKeybindDialog(MenuPageEventArgs e) { var args = e as KeybindChangeEventArgs; if (args == null) { return; } _lastKeybindChanged = args.Button; var keyDialog = new MenuDialog(); keyDialog.AddTextLine("Press any key or button."); _currentDialog = keyDialog; _dialogOpen = true; }
private void SaveGame(MenuPageEventArgs e) { var args = e as SaveGameEventArgs; if (args == null) { return; } _waitForSave = true; var msg = new SaveLoadMessage(); msg.FileNumber = args.FileNumber; msg.Data = DataHelper.GetSaveDataCopyForFileNumber(args.FileNumber); _resourceManager.RequestSave(msg); }
private void OnErase(MenuPageEventArgs e) { _eraseButton.Disable(); _file0Button.ResetEventHandlers(); _file1Button.ResetEventHandlers(); _file2Button.ResetEventHandlers(); _file0Button.OnSelected += OnEraseFile; _file1Button.OnSelected += OnEraseFile; _file2Button.OnSelected += OnEraseFile; _file0Button.Args = new OpenDialogEventArgs(); _file1Button.Args = new OpenDialogEventArgs(); _file2Button.Args = new OpenDialogEventArgs(); _file0Button.OnSelected += RaiseOpenDialogEvent; _file1Button.OnSelected += RaiseOpenDialogEvent; _file2Button.OnSelected += RaiseOpenDialogEvent; HighlightFileBasedOnIndex(); }
private void OnLoadFile(MenuPageEventArgs e) { _dialogOpen = true; _loadConfirmDialog = new MenuDialog(); _loadConfirmDialog.AddTextLine("Any unsaved progress will be lost."); var okButton = new MenuButton(new Vector2(0, 0), "Ok", ButtonStyles.Dialog, new StartOrLoadEventArgs(_fileHighlightIndex)); okButton.OnSelected += RaiseLoadGameEvent; okButton.OnSelected += RaiseCloseDialogEvent; var cancelButton = new MenuButton(new Vector2(0, 0), "Cancel", ButtonStyles.Dialog, new CloseDialogEventArgs()); cancelButton.OnSelected += RaiseCloseDialogEvent; cancelButton.OnSelected += ResetFileButtons; _loadConfirmDialog.AddButton(okButton); _loadConfirmDialog.AddButton(cancelButton); _currentDialog = _loadConfirmDialog; _currentButton.DeHighlight(); _currentButton = okButton; _currentButton.Highlight(); }