簡體   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