我正在尝试为 AP 课程制作 rpg 风格的游戏,但在进入新区域时尝试停止不同的声音时遇到了问题。有什么方法可以终止其他方法的声音吗?
我尝试过使用 ASYNC,但它根本不播放声音(这可能是由于多线程/方法同时运行)以及 SND_FILENAME | 异步。我对我正在使用的概念不太熟悉,任何指导都会有很长的路要走。
三种声音方法:
void menu()
{
while(startMusic==1)
{
PlaySound(TEXT("C:/finalprojectmusic/passaway.wav"), NULL, SND_FILENAME);
}
}
void landscape()
{
while(starter==1)
{
PlaySound(TEXT("C:/finalprojectmusic/oddish.wav"), NULL, SND_FILENAME);
}
}
void battle()
{
while(battleOn==1)
{
PlaySound(TEXT("C:/finalprojectmusic/finboss.wav"), NULL, SND_FILENAME);
}
}
当我正常运行文件时,每个方法中的不同声音会在前一个停止时立即进入一个新区域,这很好,但不是我们想要的。