c如果使用1按钮在我的应用程序中停用声音?

时间:2017-03-14 16:42:08

标签: audio unity3d

我在某些场景中有一些mp3音频,我的主场景中有1个按钮,我想当用户按下这些按钮时,我的应用程序没有mp3声音。我是否必须在没有声音的情况下复制我的应用或者怎么样?

我有这个但不行吗?

public class AudioApp : MonoBehaviour {

    public void SonidoApp() {
        PlayerPrefs.SetInt("MP3AudioState", 1);

    }

    public void SonidoAppmute() {
        PlayerPrefs.SetInt("MP3AudioState", 0);

    }

}

2 个答案:

答案 0 :(得分:1)

你可以做的是当用户按下按钮时你在PlayerPrefs中保存一个值(0代表静音1代表静音作为例子):

PlayerPrefs.SetInt("MP3AudioState", 1);

无论您在何处播放音频声音,您只需检查所保存的值:

if(PlayerPrefs.GetInt("MP3AudioState") == 0){ //Play the sound}

因此,如果您想要播放声音时保存的值为0,那么如果它不是1,则让它通过。

答案 1 :(得分:1)

要停用场景中的所有音频,只需将当前AudioListener的音量更改为零。

默认情况下,AudioListener会附加到您的相机,因此这可能对您有用:

Camera.main.GetComponent<AudioListener>.volume = 0;