- Home /
Question by
gimoj · Jul 22, 2014 at 02:56 PM ·
audioplayerprefsmusicmute
Manage and toggle background music and mute?
I'm trying to make a button to manage the background music, taking into to consideration if it is muted or not but there's a problem with the script playing the audio clip. Whenever I click the bgm toggle in the option scene I gave to go back to main menu where the script controlling the audio clip is for it to take effect. When I changed the code the mute button started acting weird, playing the audio clip multiple times making it sound distorted. How can I fix my code, to make the bgm toggle and mute button work independently?
private bool muted;
private bool BGMstatus;
private static BgMusicPlayer instance = null;
public static BgMusicPlayer Instance
{
get
{
if (instance == null)
{
instance = (BgMusicPlayer)FindObjectOfType(typeof(BgMusicPlayer));
}
return instance;
}
}
void Awake() {
if (Instance != this)
{
Destroy(gameObject);
}
else
{
DontDestroyOnLoad(gameObject);
}
SoundCheck ();
BGMSoundCheck ();
// instance = this; // DontDestroyOnLoad(gameObject); }
void Update () {
SoundCheck ();
BGMSoundCheck ();
if(Application.loadedLevelName == "Stage")
{
audio.Stop ();
}
if(Application.loadedLevelName == "Main Menu" && !muted && !audio.isPlaying)
{
if(!BGMstatus)
{
audio.Play ();
}
else if (BGMstatus)
{
audio.Stop ();
}
}
else if(Application.loadedLevelName == "Main Menu" && muted && audio.isPlaying)
{
if(BGMstatus)
{
audio.Stop ();
}
else if (!BGMstatus)
{
audio.Play ();
}
}
}
void SoundCheck ()
{
if (PlayerPrefs.GetInt ("AudioIsMuted") == 1)
{
muted = true;
}
else if (PlayerPrefs.GetInt ("AudioIsMuted") == 0)
{
muted = false;
}
}
void BGMSoundCheck ()
{
if (PlayerPrefs.GetInt ("BGMIsMuted") == 1)
{
BGMstatus = true;
}
else if (PlayerPrefs.GetInt ("BGMIsMuted") == 0)
{
BGMstatus = false;
}
}
Comment
Your answer
Follow this Question
Related Questions
audio change object size 1 Answer
Muting music at the start of the game. 1 Answer
Stream music from a folder? 1 Answer
mute / unmute helps 2 Answers