2025-01-02 12:15:45 +08:00

43 lines
1.2 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/*******************************************************************************
*Create By CG
*Function
*******************************************************************************/
namespace CG.Framework
{
public abstract class AudioCtrl:MonoBehaviour
{
protected virtual void Regist()
{
if (!AudioMng.Instance.Audios.Contains(this))
AudioMng.Instance.Audios.Add(this);
}
protected virtual void UnRegister()
{
if (AudioMng.Instance.Audios.Contains(this))
AudioMng.Instance.Audios.Remove(this);
}
public virtual void AdjustVolume(float Volue)
{
transform.GetComponent<AudioSource>().volume = Volue;
}
}
public class AudioMng : MonoSingleton<AudioMng>
{
public List<AudioCtrl> Audios = new List<AudioCtrl>();
public float _CurVolume = 1;
public void AdjustVolume(float volue)
{
//WDebug.Log($"ÐÞ¸ÄÉùÒô£º{volue}");
_CurVolume = volue;
for (int i = 0; i < Audios.Count; i++)
{
Audios[i].AdjustVolume(volue);
}
}
}
}