Я не могу изменить громкость музыки более 1 раза. Регулятор громкости находится на сцене «Настройки», поэтому, когда я перехожу на эту сцену, я могу изменить громкость звука игры, но когда я выхожу из сцены и возвращаюсь, я не могу. Я предполагаю, что это происходит из-за моего плохого использования DontDestroyOnLoad.
Как только я меняю громкость, включается DontDestroyOnLoad, поэтому громкость не меняется, когда вы выходите из сцены, но когда вы возвращаетесь в Настройки, чтобы изменить его обратно, это не работает из-за DontDestroyOnLoad.
Как я могу решить это, чтобы я мог изменить это, где я хочу?
public class soundCont : MonoBehaviour {
private static float musicVolume = 1f;
private static float SetVolumeFX = 1f;
private void Start()
{
musicVolume = Musicafondo.instance.musicSource.volume;
}
void Update ()
{
MusicBack.instance.musicSource.volume = musicVolume;
MusicBack.instance.efxSource.volume = SetVolumeFX;
MusicBack.instance.efxSourceEnemy.volume = SetVolumeFX;
DontDestroyOnLoad(this.gameObject);
}
public void SetVolume(float vol)
{
musicVolume = vol;
}
public void SetVolumeFx(float vol2)
{
SetVolumeFX = vol2;
}
}