You've already forked taptap2024_GJ_chidouren
init
This commit is contained in:
99
Assets/Scripts/Views/SettingPanel.cs
Normal file
99
Assets/Scripts/Views/SettingPanel.cs
Normal file
@@ -0,0 +1,99 @@
|
||||
using System;
|
||||
using System.AchieveSystem;
|
||||
using System.Collections.Generic;
|
||||
using Framework.Asset;
|
||||
using Framework.Audio;
|
||||
using Framework.Save;
|
||||
using Game;
|
||||
using Game.Component;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using IcecreamView;
|
||||
using TMPro;
|
||||
|
||||
namespace Views
|
||||
{
|
||||
public class SettingPanel : IcecreamView.IC_AbstractModule
|
||||
{
|
||||
[SerializeField] private Button _backBtn;
|
||||
[SerializeField] private Button _quitBtn;
|
||||
[SerializeField] private Button _aboutBtn;
|
||||
[SerializeField] private GameSlider _bgmSlider;
|
||||
[SerializeField] private GameSlider _seSlider;
|
||||
[SerializeField] private GameSlider _shakeSlider;
|
||||
[SerializeField] private TMP_Text _version;
|
||||
[SerializeField] private Toggle _shakeToggle;
|
||||
[SerializeField] private TMP_Text _shakeToggleTip;
|
||||
|
||||
|
||||
public override void OnInitView()
|
||||
{
|
||||
this._backBtn.onClick.AddListener(this.ViewConnector.CloseView);
|
||||
this._quitBtn.onClick.AddListener(() =>
|
||||
{
|
||||
this.ViewConnector.CloseView();
|
||||
GameManager.Instance.ExitGame();
|
||||
});
|
||||
this._aboutBtn.onClick.AddListener(OnClick_About);
|
||||
this._bgmSlider.OnValueChange += BGMChange;
|
||||
this._seSlider.OnValueChange += SEChange;
|
||||
this._shakeToggle.isOn = Account.Instance.AccountSystemData.ShakeValue > 0;
|
||||
ShakeChange(this._shakeToggle.isOn);
|
||||
this._shakeToggle.onValueChanged.AddListener(ShakeChange);
|
||||
}
|
||||
|
||||
private void ShakeChange(bool hasActive)
|
||||
{
|
||||
Account.Instance.AccountSystemData.ShakeValue = hasActive ? 1 : 0;
|
||||
_shakeToggleTip.text = hasActive ? "震动开启" : "震动关闭";
|
||||
if (hasActive)
|
||||
{
|
||||
GameManager.Instance.Vibrator(VibratorScale.Normal);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void SEChange(float obj)
|
||||
{
|
||||
AudioManager.Instance.SoundValue = obj * 0.01f;
|
||||
}
|
||||
|
||||
private void BGMChange(float obj)
|
||||
{
|
||||
AudioManager.Instance.MusicValue = obj * 0.01f;
|
||||
}
|
||||
|
||||
private void OnClick_About()
|
||||
{
|
||||
// if (GameGlobalConfig.Instance.Channel == GameChannel.Taptap)
|
||||
// {
|
||||
// LaunchAppUtils.ToTapTapTargetApp ();
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// LaunchAppUtils.ToCommonTargetApp ();
|
||||
// }
|
||||
AchievementMgr.Instance.Push(AchievementCode.None);
|
||||
Debug.Log(AchievementMgr.Instance.GetAchieveCount((int)AchievementCode.None));
|
||||
}
|
||||
|
||||
public override void OnOpenView(IC_ViewData parameters)
|
||||
{
|
||||
this._bgmSlider.MaxValue = 100;
|
||||
this._seSlider.MaxValue = 100;
|
||||
// this._shakeSlider.MaxValue = 100;
|
||||
this._bgmSlider.ToValue(Account.Instance.AccountSystemData.BGMValue * 100, 0.35f);
|
||||
this._seSlider.ToValue(Account.Instance.AccountSystemData.SEValue * 100, 0.35f);
|
||||
// this._shakeSlider.ToValue(Account.Instance.AccountSystemData.ShakeValue * 100, 0.35f);
|
||||
var assetVersion = AssetManager.GetCurVersion();
|
||||
this._version.text
|
||||
= string.Format(this._version.text,
|
||||
Application.version + $".[{assetVersion}.{(int)GameGlobalConfig.Instance.Channel}]");
|
||||
}
|
||||
|
||||
public override void OnCloseView()
|
||||
{
|
||||
Account.Instance.Save(SaveData.System);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user