【发布时间】:2015-07-24 03:35:49
【问题描述】:
在我的程序中,目前我可以播放背景音乐。我的游戏是基于射击游戏的,如果我按下一个按钮,比如说向上箭头,它不会播放声音,并且在播放声音之后,它会继续我们在背景音乐中停止的地方?这是我的代码:
#include <iostream>
#include <Windows.h>
#include <conio.h>
#pragma comment (lib , "winmm.lib") // Used for sound
using namespace std;
// Define key
#define KEY_UP 72
int main()
{
int key = 0;
while(true)
{
PlaySound(TEXT("Background Music.wav"), NULL, SND_FILENAME|SND_ASYNC);
key = _getch();
if (key == KEY_UP)
PlaySound(TEXT("GunSound.wav"), NULL, SND_FILENAME|SND_ASYNC);
}
return 0;
}
【问题讨论】:
-
使用 PlaySound() 函数似乎无法实现您想要的行为。如果您想要这种行为,您可能需要重写您的程序以使用更灵活的声音输出 API(例如 DirectX 或 waveOut,请参阅此问题:stackoverflow.com/questions/2010400/…)