コード例 #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        public MenuScreen(string menuTitle)
        {
            this.menuTitle = menuTitle;

            TransitionOnTime = TimeSpan.FromSeconds(0.5);
            TransitionOffTime = TimeSpan.FromSeconds(0.5);

            menuUp = new InputAction(
                new Buttons[] { Buttons.DPadUp, Buttons.LeftThumbstickUp }, 
                new Keys[] { Keys.Up, Keys.W },
                new MouseButtons[] { },
                true);
            menuDown = new InputAction(
                new Buttons[] { Buttons.DPadDown, Buttons.LeftThumbstickDown },
                new Keys[] { Keys.Down, Keys.S },
                new MouseButtons[] {  },
                true);
            menuSelect = new InputAction(
                new Buttons[] { Buttons.A, Buttons.Start },
                new Keys[] { Keys.Enter, Keys.Space },
                new MouseButtons[] { MouseButtons.LeftButton },
                true);
            menuCancel = new InputAction(
                new Buttons[] { Buttons.B, Buttons.Back },
                new Keys[] { Keys.Escape },
                new MouseButtons[] { MouseButtons.LeftButton },
                true);

            Scale = SettingsManager.GetResolutionScale(SettingsManager.Settings.Resolution);
        }
コード例 #2
0
ファイル: MyGame.cs プロジェクト: Byron1c/MonoGame-Game-Menu
        /// <summary>
        /// Constructor.
        /// </summary>
        public MyGame()
        {
            TransitionOnTime = TimeSpan.FromSeconds(1.5);
            TransitionOffTime = TimeSpan.FromSeconds(0.5);

            pauseAction = new InputAction(
                new Buttons[] { Buttons.Start, Buttons.Back },
                new Keys[] { Keys.Escape },
                new MouseButtons[] { MouseButtons.LeftButton },
                true);
        }
コード例 #3
0
        //static int volume = 10;

        #endregion

        #region Initialization


        /// <summary>
        /// Constructor.
        /// </summary>
        public OptionsMenuScreen()
            : base("Options")
        {
            
            resolutions = GetSupportedResolutions();

            SettingsManager.LoadSettings();

            HasCursor = true;

            menuSelectBack = new InputAction(
                new Buttons[] { Buttons.A, Buttons.Start },
                new Keys[] { Keys.Enter, Keys.Space },
                new MouseButtons[] { MouseButtons.RightButton },
                true);
            


            // Create our menu entries.
            graphicsLevelMenuEntry = new MenuEntry(string.Empty, this.Scale);
            resolutionMenuEntry = new MenuEntry(string.Empty, this.Scale);
            fullScreenMenuEntry = new MenuEntry(string.Empty, this.Scale);
            volumeMenuEntry = new MenuEntry(string.Empty, this.Scale);

            spacerMenuEntry = new MenuEntry(string.Empty, this.Scale);

            SetMenuEntryText();

            MenuEntry accept = new MenuEntry("Accept", ColourEntriesOther, this.Scale);
            MenuEntry back = new MenuEntry("Back", ColourEntriesOther, this.Scale);

            // Hook up menu event handlers.

            resolutionMenuEntry.Selected += ResolutionMenuEntrySelected;
            resolutionMenuEntry.SelectedPrevious += ResolutionMenuEntrySelectedPrevious;
            fullScreenMenuEntry.Selected += FullScreenMenuEntrySelected;
            fullScreenMenuEntry.SelectedPrevious += FullScreenMenuEntrySelected;
            volumeMenuEntry.Selected += VolumeMenuEntrySelected;
            volumeMenuEntry.SelectedPrevious += VolumeMenuEntrySelectedPrevious;
            graphicsLevelMenuEntry.Selected += graphicsDetailLevelMenuEntrySelected;
            graphicsLevelMenuEntry.SelectedPrevious += graphicsDetailLevelMenuEntrySelectedPrevious;

            back.Selected += OnCancel;
            accept.Selected += OnAccept;

            // Add entries to the menu.
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(fullScreenMenuEntry); 
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(resolutionMenuEntry);
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(volumeMenuEntry);
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(graphicsLevelMenuEntry);
            MenuEntries.Add(spacerMenuEntry); // spacer
            MenuEntries.Add(spacerMenuEntry); // spacer

            MenuEntries.Add(accept);
            MenuEntries.Add(back);
        }
コード例 #4
0
        /// <summary>
        /// Constructor lets the caller specify whether to include the standard
        /// "A=ok, B=cancel" usage text prompt.
        /// </summary>
        public MessageBoxScreen(string message, bool includeUsageText, float vScale)
        {
            //const string usageText = "\nA button, Space, Enter = ok" +
            //                         "\nB button, Esc = cancel";
            const string usageText = "\nSpace or Enter to Quit\n" +
                                     "\nEsc to Cancel"; 
            
            if (includeUsageText)
                this.message = message + usageText;
            else
                this.message = message;

            HasCursor = true;
            IsPopup = true;

            scale = vScale;

            TransitionOnTime = TimeSpan.FromSeconds(0.2);
            TransitionOffTime = TimeSpan.FromSeconds(0.2);

            menuSelect = new InputAction(
                new Buttons[] { Buttons.A, Buttons.Start },
                new Keys[] { Keys.Space, Keys.Enter },
                new MouseButtons[] { MouseButtons.LeftButton },
                true);
            menuCancel = new InputAction(
                new Buttons[] { Buttons.B, Buttons.Back },
                new Keys[] { Keys.Escape, Keys.Back },
                new MouseButtons[] { MouseButtons.RightButton },
                true);
        }