62 lines
1.2 KiB
C#
62 lines
1.2 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.Audio;
|
|
|
|
public class AudioManager : MonoBehaviour
|
|
{
|
|
public static AudioManager instance;
|
|
|
|
|
|
[SerializeField] private AudioMixer audioMixer;
|
|
[SerializeField] private SO_AudioConfig audioConfig;
|
|
|
|
private void Awake()
|
|
{
|
|
instance = this;
|
|
}
|
|
|
|
// Start is called before the first frame update
|
|
void Start()
|
|
{
|
|
if(audioConfig.isBGMMuted) MuteBGM();
|
|
if (audioConfig.isSFXMuted) MuteSFX();
|
|
}
|
|
|
|
|
|
public bool IsBGMMuted()
|
|
{
|
|
return audioConfig.isBGMMuted;
|
|
}
|
|
|
|
public bool IsSFXMuted()
|
|
{
|
|
return audioConfig.isSFXMuted;
|
|
}
|
|
|
|
public void MuteBGM()
|
|
{
|
|
audioMixer.SetFloat("BGM", -80);
|
|
audioConfig.SetBGMMuted(true);
|
|
}
|
|
|
|
public void UnMuteBGM()
|
|
{
|
|
audioMixer.SetFloat("BGM", 0);
|
|
audioConfig.SetBGMMuted(false);
|
|
}
|
|
|
|
public void MuteSFX()
|
|
{
|
|
audioMixer.SetFloat("SFX", -80);
|
|
audioConfig.SetSFXMuted(true);
|
|
}
|
|
|
|
public void UnMuteSFX()
|
|
{
|
|
audioMixer.SetFloat("SFX", 0);
|
|
audioConfig.SetSFXMuted(false);
|
|
}
|
|
|
|
}
|