繁体   English   中英

从主菜单场景加载我的游戏后音频停止播放

[英]Audio stops playing after loading my game from the main menu scene

当我暂停游戏时,音频也会暂停,但我创建了一个“返回菜单”按钮,它会进入主菜单,但是当我再次点击开始并开始运行游戏时,我的音频已死,我听不到任何事物。

这是我的代码:

using UnityEngine; using UnityEngine.SceneManagement;

public class pausemenu : MonoBehaviour { public GameObject pauseMenu;

 public bool isPaused;
 
 void Start()
 {
     pauseMenu.SetActive(false);
 }
 // Update is called once per frame
 void Update()
 {
     if(Input.GetKeyDown(KeyCode.Escape))
     {
         if(isPaused)
         {
             ResumeGame();
         }
         else
         {
             PauseGame();
         }
     }
      
 }   
 
 
 public void PauseGame()
 {
     pauseMenu.SetActive(true);
     Time.timeScale = 0f;
     isPaused = true;
     AudioListener.pause = true;
 }
 
 public void ResumeGame()
 {
     pauseMenu.SetActive(false);
     Time.timeScale = 1f;
     isPaused = false;
     AudioListener.pause = false;
 }
  
 public void GoToMainMenu()
 {
     Time.timeScale = 1f;
     SceneManager.LoadScene("menu1");
 } 
 
 public void QuitTheGame()
 {
     Application.Quit();
 }
   
}

在 PauseGame() 函数中,您将 AudioListener.pause 设置为 true。 因此,在 GoToMainMenu() 函数中将 AudioListener.pause 设置为 false。

如果您暂停游戏并调用PauseGame() AudioListener.pause设置为true

如果您恢复,则正确地将AudioListener.pause设置为false

然而,如果你停止你的游戏(通过进入一些主菜单)并开始一个新的(或前一​​个)静态 bool AudioListener.pause由于你的暂停菜单干预仍然是false的。

即使您的开始设置导致在开始新游戏时调用pausemenu.Start() ,这也不会影响AudioListener.pause 您必须明确调用pausemenu.ResumeGame()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM