147 lines
4.6 KiB
C#
147 lines
4.6 KiB
C#
using BX;
|
|
using DG.Tweening;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
/// <summary>
|
|
/// 设置面板
|
|
/// </summary>
|
|
public class SetUpUI : UIBaseClass
|
|
{
|
|
/// <summary>
|
|
/// 关闭按钮
|
|
/// </summary>
|
|
public Button closeBtn;
|
|
|
|
public Image voiceIcon;
|
|
public Image shankIcon;
|
|
public Image musicIcon;
|
|
|
|
public Button voiceBtn;
|
|
public Button shankBtn;
|
|
public Button musicBtn;
|
|
|
|
public Slider voiceSlider;
|
|
public Slider shankSlider;
|
|
public Slider musicSlider;
|
|
|
|
private bool isVoice;
|
|
private bool isMusic;
|
|
private bool isShank;
|
|
|
|
public Button infoBtn;
|
|
|
|
private void Start()
|
|
{
|
|
CloseBtnListener();
|
|
VoiceBtnListener();
|
|
MusicBtnListener();
|
|
ShankBtnListener();
|
|
InfoBtnListener();
|
|
}
|
|
|
|
public override void OnShow()
|
|
{
|
|
base.OnShow();
|
|
voiceSlider.value = UserDataManager.Instance.userData.soundSwitchData.isOpenSEMusic ? 1 : 0;
|
|
isVoice = UserDataManager.Instance.userData.soundSwitchData.isOpenSEMusic;
|
|
musicSlider.value = UserDataManager.Instance.userData.soundSwitchData.isOpenBKMusic ? 1 : 0;
|
|
isMusic = UserDataManager.Instance.userData.soundSwitchData.isOpenBKMusic;
|
|
shankSlider.value = UserDataManager.Instance.userData.soundSwitchData.isOpenShake ? 1 : 0;
|
|
isShank = UserDataManager.Instance.userData.soundSwitchData.isOpenShake;
|
|
SetIcon();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 设置图片
|
|
/// </summary>
|
|
public void SetIcon()
|
|
{
|
|
voiceIcon.sprite = UserDataManager.Instance.userData.soundSwitchData.isOpenSEMusic ? YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpOpen"): YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpHide");
|
|
shankIcon.sprite = UserDataManager.Instance.userData.soundSwitchData.isOpenShake ? YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpOpen"): YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpHide");
|
|
musicIcon.sprite = UserDataManager.Instance.userData.soundSwitchData.isOpenBKMusic ? YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpOpen"): YooAssetManager.Instance.LoadAssetSync<Sprite>(PackagesName.GameData, "SetUpHide");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 关闭按钮逻辑
|
|
/// </summary>
|
|
private void CloseBtnListener()
|
|
{
|
|
closeBtn.onClick.AddListener(() =>
|
|
{
|
|
HideMe();
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// Info监听
|
|
/// </summary>
|
|
private void InfoBtnListener()
|
|
{
|
|
infoBtn.onClick.AddListener(() =>
|
|
{
|
|
BXSdk.Instance.OpenPrivacyURL("https://www.game.pricacy");
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// 音效按钮监听
|
|
/// </summary>
|
|
private void VoiceBtnListener()
|
|
{
|
|
voiceBtn.onClick.AddListener(() =>
|
|
{
|
|
isVoice = !isVoice;
|
|
UserDataManager.Instance.userData.soundSwitchData.SetIsOpenSEMusic(isVoice);
|
|
float value=isVoice?0:1;
|
|
float end = isVoice ?1:0;
|
|
DOTween.To(() => value, x => value = x, end, 0.3f).OnUpdate(() =>
|
|
{
|
|
voiceSlider.value = value;
|
|
}).SetUpdate(true);
|
|
SetIcon();
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// 背景音乐按钮监听
|
|
/// </summary>
|
|
private void MusicBtnListener()
|
|
{
|
|
musicBtn.onClick.AddListener(() =>
|
|
{
|
|
isMusic = !isMusic;
|
|
UserDataManager.Instance.userData.soundSwitchData.SetIsOpenBKMusic(isMusic);
|
|
AudioManager.Instance.SetBkMusicClip();
|
|
float value = isMusic ? 0 : 1;
|
|
float end = isMusic ? 1 : 0;
|
|
DOTween.To(() => value, x => value = x, end, 0.3f).OnUpdate(() =>
|
|
{
|
|
musicSlider.value = value;
|
|
}).SetUpdate(true);
|
|
SetIcon();
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// 震动按钮监听
|
|
/// </summary>
|
|
private void ShankBtnListener()
|
|
{
|
|
shankBtn.onClick.AddListener(() =>
|
|
{
|
|
isShank = !isShank;
|
|
UserDataManager.Instance.userData.soundSwitchData.SetIsOpenShake(isShank);
|
|
float value = isShank ? 0 : 1;
|
|
float end = isShank ? 1 : 0;
|
|
DOTween.To(() => value, x => value = x, end, 0.3f).OnUpdate(() =>
|
|
{
|
|
shankSlider.value = value;
|
|
}).SetUpdate(true);
|
|
SetIcon();
|
|
});
|
|
}
|
|
}
|