| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- using ProjectBase.UI;
- using ShotSimulator.Screen;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- namespace ShotSimulator.UI
- {
- public class SettingUIView : BaseUIView
- {
- public Toggle generalToggle;
- public Toggle modeToggle;
- public Transform generalPanel;
- public Transform modePanel;
- public Button backButton;
- protected override void InitUIObjects()
- {
- base.InitUIObjects();
- generalToggle.onValueChanged.AddListener((isOn) => { OnPanelToggleChanged(generalPanel, isOn); });
- modeToggle.onValueChanged.AddListener((isOn) => { OnPanelToggleChanged(modePanel, isOn); });
- soundToggle.onValueChanged.AddListener((isOn) => { OnPanelToggleChanged(soundPanel, isOn); });
- graphicsToggle.onValueChanged.AddListener((isOn) => { OnPanelToggleChanged(graphicsPanel, isOn); });
- bgmSlider.onValueChanged.AddListener(OnBGMSliderValueChanged);
- soundEffectSlider.onValueChanged.AddListener(OnSoundEffectSliderValueChanged);
- brightnessSlider.onValueChanged.AddListener(OnBrightnessSliderValueChanged);
- saturationSlider.onValueChanged.AddListener(OnSaturationSliderValueChanged);
- tacticalModeToggle.onValueChanged.AddListener(OnTacticalModeToggleValueChanged);
- for(int i = 0; i < targetToggles.Count; i++)
- {
- int index = i;
- targetToggles[index].onValueChanged.AddListener((isOn) => { if (isOn) OnTargetToggles(index); });
- }
- backButton.onClick.AddListener(OnBackButtonClick);
- generalToggle.isOn = true;
- }
- protected override void OnShowCallBack()
- {
- base.OnShowCallBack();
- InitSoundPanel();
- InitGraphicsPanel();
- }
- private void OnPanelToggleChanged(Transform panel, bool view)
- {
- panel.gameObject.SetActive(view);
- }
- private void OnBackButtonClick()
- {
- UIManager.GetInstance().HideUIView(this);
- UIManager.GetInstance().ShowUIView("MainScreenUIView");
- }
- #region Mode
- public Toggle tacticalModeToggle;
- private void OnTacticalModeToggleValueChanged(bool isOn)
- {
- VirtualMouse.GetInstance().TacticalMode = isOn;
- }
- #endregion
- #region SoundPanel
- public Toggle soundToggle;
- public Transform soundPanel;
- public Toggle bgmToggle;
- public Slider bgmSlider;
- public Toggle soundEffectToggle;
- public Slider soundEffectSlider;
- private void InitSoundPanel()
- {
- bgmSlider.SetValueWithoutNotify(SoundManager.GetInstance().GetBGMVolum());
- bgmToggle.SetIsOnWithoutNotify(SoundManager.GetInstance().GetBGMVolum() != 0);
- soundEffectSlider.SetValueWithoutNotify(SoundManager.GetInstance().GetSoundEffectsVolume());
- soundEffectToggle.SetIsOnWithoutNotify(SoundManager.GetInstance().GetSoundEffectsVolume() != 0);
- }
- private void OnBGMSliderValueChanged(float value)
- {
- SoundManager.GetInstance().SetBGMVolume(value);
- bgmToggle.isOn = value != 0;
- }
- private void OnSoundEffectSliderValueChanged(float value)
- {
- SoundManager.GetInstance().SetSoundEffectsVolume(value);
- soundEffectToggle.isOn = value != 0;
- }
- #endregion
- #region Graphics
- public Toggle graphicsToggle;
- public Transform graphicsPanel;
- public Text brightnessText;
- public Slider brightnessSlider;
- public Text saturationText;
- public Slider saturationSlider;
- public List<Toggle> targetToggles = new List<Toggle>();
- private void InitGraphicsPanel()
- {
- brightnessSlider.SetValueWithoutNotify(ScreenEffectManager.GetInstance().GetBrightness() * 25);
- brightnessText.text = brightnessSlider.value.ToString();
- saturationSlider.SetValueWithoutNotify(ScreenEffectManager.GetInstance().GetSaturation() * 25);
- saturationText.text = saturationSlider.value.ToString();
- targetToggles[ScreenEffectManager.GetInstance().GetTargetColorIndex()].SetIsOnWithoutNotify(true);
- }
- private void OnBrightnessSliderValueChanged(float value)
- {
- ScreenEffectManager.GetInstance().SetBrightness(value / 25);
- brightnessText.text = value.ToString();
- }
- private void OnSaturationSliderValueChanged(float value)
- {
- ScreenEffectManager.GetInstance().SetSaturation(value / 25);
- saturationText.text = value.ToString();
- }
- private void OnTargetToggles(int index)
- {
- ScreenEffectManager.GetInstance().SetTargetColorIndex(index);
- }
- #endregion
- }
- }
|