public override void ButtonActions()
        {
            switch (menuOptions[cursorIndex, 0].ToLower())
            {
            case "tutorials":
                game.tutorialManager.TutorialsUsed = !game.tutorialManager.TutorialsUsed;
                UpdateText();

                PlaySelectSound();
                break;

            case "display cursor":
                ControlManager.ToggleMouseHidden();
                game.IsMouseVisible = ControlManager.IsMouseShown();
                UpdateText();

                PlaySelectSound();
                break;

            case "back":
                optionsMenuState.LeaveSubState();
                OnLeave();

                PlayLowPitchSelectSound();
                break;
            }
        }
        public override void OnDisplay()
        {
            menuOptions[0, 0] = "Tutorials";
            if (game.tutorialManager.TutorialsUsed)
            {
                menuOptions[0, 1] = "On";
            }
            else
            {
                menuOptions[0, 1] = "Off";
            }

            menuOptions[1, 0] = "Display Cursor";
            if (ControlManager.IsMouseShown())
            {
                menuOptions[1, 1] = "On";
            }
            else
            {
                menuOptions[1, 1] = "Off";
            }

            menuOptions[2, 0] = "Back";
            menuOptions[2, 1] = "";

            base.OnDisplay();
        }
        public void SaveSettings()
        {
            Game.settingsFile.EmptySaveFile(Game1.SaveFilePath, "settings.ini");

            SortedDictionary<String, String> keySaveData = new SortedDictionary<string, string>();
            keySaveData.Add("action1", ControlManager.GetKeyName(RebindableKeys.Action1));
            keySaveData.Add("action2", ControlManager.GetKeyName(RebindableKeys.Action2));
            keySaveData.Add("action3", ControlManager.GetKeyName(RebindableKeys.Action3));
            keySaveData.Add("up", ControlManager.GetKeyName(RebindableKeys.Up));
            keySaveData.Add("down", ControlManager.GetKeyName(RebindableKeys.Down));
            keySaveData.Add("left", ControlManager.GetKeyName(RebindableKeys.Left));
            keySaveData.Add("right", ControlManager.GetKeyName(RebindableKeys.Right));
            keySaveData.Add("pause", ControlManager.GetKeyName(RebindableKeys.Pause));
            keySaveData.Add("inv", ControlManager.GetKeyName(RebindableKeys.Inventory));
            keySaveData.Add("map", ControlManager.GetKeyName(RebindableKeys.Map));
            keySaveData.Add("log", ControlManager.GetKeyName(RebindableKeys.Missions));
            keySaveData.Add("help", ControlManager.GetKeyName(RebindableKeys.Help));

            Game.settingsFile.Save(Game1.SaveFilePath, "settings.ini", "keys", keySaveData);

            SortedDictionary<String, String> visualSaveData = new SortedDictionary<string, string>();
            visualSaveData.Add("fullscreen", Game.graphics.IsFullScreen.ToString());
            visualSaveData.Add("showfps", Game.ShowFPS.ToString());
            visualSaveData.Add("resolutionx", ((int)Game.Resolution.X).ToString());
            visualSaveData.Add("resolutiony", ((int)Game.Resolution.Y).ToString());

            Game.settingsFile.Save(Game1.SaveFilePath, "settings.ini", "visual", visualSaveData);

            SortedDictionary<String, String> soundSaveData = new SortedDictionary<string, string>();
            soundSaveData.Add("mutemusic", Game.musicManager.IsMusicMuted().ToString());
            soundSaveData.Add("musicvolume", Convert.ToString(Game.musicManager.GetMusicVolume(), CultureInfo.InvariantCulture));
            soundSaveData.Add("muteSound", Game.soundEffectsManager.isSoundMuted().ToString());
            soundSaveData.Add("soundvolume", Convert.ToString(Game.soundEffectsManager.GetSoundVolume(), CultureInfo.InvariantCulture));
            soundSaveData.Add("loadsound", SoundEffectsManager.LoadSoundEffects.ToString());

            Game.settingsFile.Save(Game1.SaveFilePath, "settings.ini", "sound", soundSaveData);

            SortedDictionary<String, String> gameOptionsSaveData = new SortedDictionary<string, string>();
            gameOptionsSaveData.Add("tutorials", Game.tutorialManager.TutorialsUsed.ToString());
            gameOptionsSaveData.Add("showmouse", ControlManager.IsMouseShown().ToString());

            Game.settingsFile.Save(Game1.SaveFilePath, "settings.ini", "game options", gameOptionsSaveData);
        }
        public void UpdateText()
        {
            if (game.tutorialManager.TutorialsUsed)
            {
                menuOptions[0, 1] = "On";
            }
            else
            {
                menuOptions[0, 1] = "Off";
            }

            if (ControlManager.IsMouseShown())
            {
                menuOptions[1, 1] = "On";
            }
            else
            {
                menuOptions[1, 1] = "Off";
            }
        }