[英]How can I control the changes of the audio made in main menu to be applied also to the in game scene audio settings?
[英]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.