Audio 用1个按钮在我的应用程序中取消声音激活?

Audio 用1个按钮在我的应用程序中取消声音激活?,audio,unity3d,Audio,Unity3d,我在一些场景中有一些mp3音频,我在主场景中有一个按钮,我想当用户按下这些按钮时,我的应用程序没有mp3声音。我必须复制没有声音的应用程序吗?或者如何 我有这个但没用 public class AudioApp : MonoBehaviour { public void SonidoApp() { PlayerPrefs.SetInt("MP3AudioState", 1); } public void SonidoAppmute() {

我在一些场景中有一些mp3音频,我在主场景中有一个按钮,我想当用户按下这些按钮时,我的应用程序没有mp3声音。我必须复制没有声音的应用程序吗?或者如何

我有这个但没用

public class AudioApp : MonoBehaviour {

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

    }

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

    }

}

当用户按下按钮时,您可以在PlayerPrefs中保存一个值(例如,0表示未静音1表示静音):

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

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

因此,如果要播放声音时您保存的值为0,则如果该值为1,则允许播放。

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

默认情况下,AudioListener连接到您的相机,因此这可能适用于您:

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

你有例子吗?因为如果我把
If(PlayerPrefs.GetInt(“MP3AudioState”)==0{{\u???\ u}
我如何指示激活我应用程序中的所有mp3声音?我不明白如何引用所有
音频源
?比如:
Colision.sonipoding=false
或者什么……我在其他脚本(Colision.cs)中有我的2
音频源
sonipoding和sonipoding2->
公共音频源
sonipoding和
公共音频源SONIDOPING 2
,@RfMvs您知道您在哪里做音频源。只需播放,首先检查它是否等于0。
Camera.main.GetComponent<AudioListener>.volume = 0;