示例#1
0
    public OptionMenuItem AddItem()
    {
        OptionMenuItem item = Attach <OptionMenuItem>("Prefab/OptionMenu/OptionMenuItem", m_Cointent);

        OptionItem.Add(item);
        m_LastUpdateCount = 5;
        return(item);
    }
示例#2
0
    public void OnSelect(OptionMenu.ItemType _type)
    {
        OptionMenuItem selectItem = m_OptionMenu.GetOptionItem(_type);

        switch (_type)
        {
        case OptionMenu.ItemType.NOTIFICATION:
        {
            bool isSwitch = m_OptionMenu.GetOptionItem(_type).IsSwitch();

            m_OptionMenu.GetOptionItem(OptionMenu.ItemType.NOT_EVENT).SetSwitch(isSwitch);         // イベント通知設定を変更
            m_OptionMenu.GetOptionItem(OptionMenu.ItemType.NOT_STAMINA).SetSwitch(isSwitch);       // スタミナ通知設定を変更
        }
        break;

        case OptionMenu.ItemType.NOT_EVENT:
        case OptionMenu.ItemType.NOT_STAMINA:
        {
            if (m_OptionMenu.GetOptionItem(_type).IsSwitch() == true)
            {
                // 通知設定がONになった場合は、アプリケーションの通知設定もONにする
                m_OptionMenu.GetOptionItem(OptionMenu.ItemType.NOTIFICATION).SetSwitch(true);
            }
        }
        break;
        }


        //-----------------------------------------------
        // 状態を保存する
        //-----------------------------------------------
        LocalSaveOption cOption = LocalSaveManager.Instance.LoadFuncOption();

        cOption.m_OptionBGM              = CheckSwitch(OptionMenu.ItemType.BGM) ? (int)LocalSaveDefine.OptionBGM.ON : (int)LocalSaveDefine.OptionBGM.OFF;
        cOption.m_OptionSE               = CheckSwitch(OptionMenu.ItemType.SE) ? (int)LocalSaveDefine.OptionSE.ON : (int)LocalSaveDefine.OptionSE.OFF;
        cOption.m_OptionGuide            = CheckSwitch(OptionMenu.ItemType.GUIDE) ? (int)LocalSaveDefine.OptionGuide.ON : (int)LocalSaveDefine.OptionGuide.OFF;
        cOption.m_OptionSpeed            = CheckSwitch(OptionMenu.ItemType.SPEED) ? (int)LocalSaveDefine.OptionSpeed.ON : (int)LocalSaveDefine.OptionSpeed.OFF;
        cOption.m_OptionBattleSkillTurn  = CheckSwitch(OptionMenu.ItemType.SKILL_TURN) ? (int)LocalSaveDefine.OptionBattleSkillTurn.ON : (int)LocalSaveDefine.OptionBattleSkillTurn.OFF;
        cOption.m_OptionConfirmAS        = CheckSwitch(OptionMenu.ItemType.CONFIRM_AS) ? (int)LocalSaveDefine.OptionConfirmAS.ON : (int)LocalSaveDefine.OptionConfirmAS.OFF;
        cOption.m_OptionBattleSkillCost  = CheckSwitch(OptionMenu.ItemType.SKILL_COST) ? (int)LocalSaveDefine.OptionBattleSkillCost.ON : (int)LocalSaveDefine.OptionBattleSkillCost.OFF;
        cOption.m_OptionBattleAchieve    = CheckSwitch(OptionMenu.ItemType.BATTLE_ACHIEVE) ? (int)LocalSaveDefine.OptionBattleAchieve.ON : (int)LocalSaveDefine.OptionBattleAchieve.OFF;
        cOption.m_OptionQuestEndTips     = CheckSwitch(OptionMenu.ItemType.QUEST_END_TIPS) ? (int)LocalSaveDefine.OptionQuestEndTips.ON : (int)LocalSaveDefine.OptionQuestEndTips.OFF;
        cOption.m_OptionAutoPlayStopBoss = CheckSwitch(OptionMenu.ItemType.AUTO_PLAY_STOP_BOSS) ? (int)LocalSaveDefine.OptionAutoPlayStopBoss.ON : (int)LocalSaveDefine.OptionAutoPlayStopBoss.OFF;
        cOption.m_OptionAutoPlayUseAS    = CheckSwitch(OptionMenu.ItemType.AUTO_PLAY_USE_AS) ? (int)LocalSaveDefine.OptionAutoPlayUseAS.ON : (int)LocalSaveDefine.OptionAutoPlayUseAS.OFF;

        cOption.m_OptionNotification = CheckSwitch(OptionMenu.ItemType.NOTIFICATION) ? (int)LocalSaveDefine.OptionNotification.ON : (int)LocalSaveDefine.OptionNotification.OFF;

        cOption.m_NotificationEvent      = CheckSwitch(OptionMenu.ItemType.NOT_EVENT) ? (int)LocalSaveDefine.OptionNotificationEvent.ON : (int)LocalSaveDefine.OptionNotificationEvent.OFF;
        cOption.m_NotificationStaminaMax = CheckSwitch(OptionMenu.ItemType.NOT_STAMINA) ? (int)LocalSaveDefine.OptionNotificationStaminaMax.ON : (int)LocalSaveDefine.OptionNotificationStaminaMax.OFF;

        LocalSaveManager.Instance.SaveFuncOption(cOption);
    }
示例#3
0
        protected override void LoadContent()
        {
            base.LoadContent();

            Vector2 size = GetScreenPosition(new Vector2(0.6f, 0.75f));
            Bounds = new Rectangle(0, 0, (int)size.X, (int)size.Y);

            OptionMenuItem<Tuple<int, int>> resolution = new OptionMenuItem<Tuple<int, int>>("Resolution", "res");
            foreach (var res in GraphicsAdapter.DefaultAdapter.SupportedDisplayModes.Select(m => new Tuple<int,int>(m.Width, m.Height)).Distinct().OrderBy(r => r.Item1))
                resolution.AddOption(res.Item1 + "x" + res.Item2, res);
            resolution.SetStartOption(new Tuple<int, int>(gameInstance.Graphics.PreferredBackBufferWidth, gameInstance.Graphics.PreferredBackBufferHeight));
            resolution.Bounds = Bounds;
            resolution.Font = MenuFont;
            resolution.ArrowLeft = ArrowLeft;
            resolution.ArrowRight = ArrowRight;
            resolution.Background = OptionSelected;
            resolution.FontColor = ItemColor;
            resolution.FontColorSelected = Color.Black;
            AddMenuItem(resolution);

            OptionMenuItem<int> displayMode = new OptionMenuItem<int>("Display Mode", "display");
            displayMode.AddOption("Fullscreen", 1);
            displayMode.AddOption("Windowed", 2);
            displayMode.SetStartOption(gameInstance.Graphics.IsFullScreen ? 1 : 2);
            displayMode.Bounds = Bounds;
            displayMode.Font = MenuFont;
            displayMode.ArrowLeft = ArrowLeft;
            displayMode.ArrowRight = ArrowRight;
            displayMode.Background = OptionSelected;
            displayMode.FontColor = ItemColor;
            displayMode.FontColorSelected = Color.Black;
            AddMenuItem(displayMode);

            TextInputMenuItem playerName = new TextInputMenuItem("Player Name", "name");
            playerName.Bounds = Bounds;
            playerName.Font = MenuFont;
            playerName.EnteredText = GameSettings.Default.PlayerName;
            playerName.Background = OptionSelected;
            playerName.FontColor = ItemColor;
            playerName.FontColorSelected = Color.Black;
            AddMenuItem(playerName);

            BoolOptionMenuItem shadows = new BoolOptionMenuItem("Shadows", "shadows");
            shadows.Bounds = Bounds;
            shadows.Font = MenuFont;
            shadows.SetStartOption(GameSettings.Default.Shadows);
            shadows.ArrowLeft = ArrowLeft;
            shadows.ArrowRight = ArrowRight;
            shadows.Background = OptionSelected;
            shadows.FontColor = ItemColor;
            shadows.FontColorSelected = Color.Black;
            AddMenuItem(shadows);

            BoolOptionMenuItem bloom = new BoolOptionMenuItem("Bloom", "bloom");
            bloom.Bounds = Bounds;
            bloom.Font = MenuFont;
            bloom.SetStartOption(GameSettings.Default.Bloom);
            bloom.ArrowLeft = ArrowLeft;
            bloom.ArrowRight = ArrowRight;
            bloom.Background = OptionSelected;
            bloom.FontColor = ItemColor;
            bloom.FontColorSelected = Color.Black;
            AddMenuItem(bloom);

            MenuItem item = new StateActionMenuItem("Cancel", GameState.MainMenu);
            item.Background = ButtonBackground;
            item.Font = MenuFont;
            item.FontColor = ItemColor;
            item.FontColorSelected = ItemColorSelected;
            item.SetWidth(Bounds.Width);
            AddMenuItem(item);

            item = new ActionMenuItem("Apply", ApplySettings);
            item.Background = ButtonBackground;
            item.Font = MenuFont;
            item.FontColor = ItemColor;
            item.FontColorSelected = ItemColorSelected;
            item.SetWidth(Bounds.Width);
            AddMenuItem(item);
        }
示例#4
0
    protected override void PageSwitchSetting(bool bActive, bool bBack)
    {
        base.PageSwitchSetting(bActive, bBack);

        //--------------------------------
        // 以下は有効になったタイミングでの処理なので、
        // フェードアウト指示の場合にはスルー
        //--------------------------------
        if (bActive == false)
        {
            return;
        }

        //--------------------------------
        // 戻り処理の場合は再構築スルー
        //--------------------------------
        if (bBack == true)
        {
            return;
        }

        //ページ初期化処理
        if (m_OptionMenu == null)
        {
            m_OptionMenu = GetComponentInChildren <OptionMenu>();
            m_OptionMenu.SetPositionAjustStatusBar(new Vector2(0, 4), new Vector2(-40, -372));

            LocalSaveOption cOption = LocalSaveManager.Instance.LoadFuncOption();

            string cMessageON  = GameTextUtil.GetText("option_display7");
            string cMessageOFF = GameTextUtil.GetText("option_display16");
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.BGM, GameTextUtil.GetText("option_display1"), cMessageON, (cOption.m_OptionBGM == (int)LocalSaveDefine.OptionBGM.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.SE, GameTextUtil.GetText("option_display2"), cMessageON, (cOption.m_OptionSE == (int)LocalSaveDefine.OptionSE.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.GUIDE, GameTextUtil.GetText("option_display3"), cMessageON, (cOption.m_OptionGuide == (int)LocalSaveDefine.OptionGuide.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.SPEED, GameTextUtil.GetText("option_display6"), cMessageOFF, (cOption.m_OptionSpeed == (int)LocalSaveDefine.OptionSpeed.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.SKILL_TURN, GameTextUtil.GetText("battle_text01"), cMessageOFF, (cOption.m_OptionBattleSkillTurn == (int)LocalSaveDefine.OptionBattleSkillTurn.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.CONFIRM_AS, GameTextUtil.GetText("option_display17"), cMessageON, (cOption.m_OptionConfirmAS == (int)LocalSaveDefine.OptionConfirmAS.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.SKILL_COST, GameTextUtil.GetText("battle_text02"), cMessageOFF, (cOption.m_OptionBattleSkillCost == (int)LocalSaveDefine.OptionBattleSkillCost.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.BATTLE_ACHIEVE, GameTextUtil.GetText("battle_text03"), cMessageOFF, (cOption.m_OptionBattleAchieve == (int)LocalSaveDefine.OptionBattleAchieve.ON));
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.QUEST_END_TIPS, GameTextUtil.GetText("option_display18"), cMessageON, (cOption.m_OptionQuestEndTips == (int)LocalSaveDefine.OptionQuestEndTips.ON));

            m_OptionMenu.AddSpace().SetHight(10); // スペース
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.NONE, GameTextUtil.GetText("option_display19"), null, false).SetShowSwitch(false);
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.AUTO_PLAY_STOP_BOSS, GameTextUtil.GetText("option_display20"), cMessageON, (cOption.m_OptionAutoPlayStopBoss == (int)LocalSaveDefine.OptionAutoPlayStopBoss.ON)).SetIndent(1);
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.AUTO_PLAY_USE_AS, GameTextUtil.GetText("option_display21"), cMessageON, (cOption.m_OptionAutoPlayUseAS == (int)LocalSaveDefine.OptionAutoPlayUseAS.ON)).SetIndent(1);

            m_OptionMenu.AddSpace().SetHight(10); // スペース

            //------------------------------------
            // 通知設定
            //------------------------------------
            bool bNotification = (cOption.m_OptionNotification == (int)LocalSaveDefine.OptionNotification.ON);
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.NOTIFICATION, GameTextUtil.GetText("option_display8"), cMessageON, bNotification);
            if (bNotification == false)
            {
                // アプリケーションの通知設定がOFFの場合は、他の通知設定もOFFにする
                cOption.m_NotificationEvent      = (int)LocalSaveDefine.OptionNotificationEvent.OFF;
                cOption.m_NotificationStaminaMax = (int)LocalSaveDefine.OptionNotificationStaminaMax.OFF;
            }
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.NOT_EVENT, GameTextUtil.GetText("option_display10"), cMessageON, (cOption.m_NotificationEvent == (int)LocalSaveDefine.OptionNotificationEvent.ON)).SetIndent(1);
            m_OptionMenu.AddItem().setup(OptionMenu.ItemType.NOT_STAMINA, GameTextUtil.GetText("option_display11"), cMessageON, (cOption.m_NotificationStaminaMax == (int)LocalSaveDefine.OptionNotificationStaminaMax.ON)).SetIndent(1);

            //------------------------------------
            // ボタンのイベント
            //------------------------------------
            for (int i = 0; i < (int)OptionMenu.ItemType.MAX; i++)
            {
                OptionMenuItem item = m_OptionMenu.GetOptionItem((OptionMenu.ItemType)i);
                if (item != null)
                {
                    item.DidSelectItem = OnSelect;
                }
            }

            LocalSaveManager.Instance.SaveFuncOption(cOption); // 状態を保存する
        }
    }