MusicPlace.h
上传用户:semy2100
上传日期:2013-01-22
资源大小:3633k
文件大小:2k
源码类别:

射击游戏

开发平台:

Visual C++

  1. /********************************************************************
  2. *                        空运爆发                                    *
  3. *                       Version 2.0                                  *
  4. * 本游戏全部代码由:                                                 *
  5. *                   冲天实验室   梁锋 编写                           *
  6. *                    邮箱:lenwine@126.com                           *
  7. *                bbs: http://free2.e-168.cn/lenwind (正在开发中...)  *
  8. **********************************************************************/
  9. #ifndef MUSICPLACE
  10. #define MUSICPLACE
  11. //设置两个全局变量控制音量
  12. extern int m_bMusVoLF;//用控制背景音乐音量大小
  13. extern int m_cMusVoLF;//用于控制音效音量大小
  14. //wave 文件头格式
  15. struct LWaveF
  16. {
  17. BYTE  RIFF[4];        //"RIFF"
  18. DWORD dwSize;         //Size of data to follow
  19. BYTE  WAVE[4];        //"WAVE"
  20. BYTE  fmt_[4];        //"fmt"
  21. DWORD dw16;           //16
  22. WORD  wOne_O;         //1
  23. WORD  wChnls;         //Number of Channels
  24. DWORD dwSRate;        //Sample Rate
  25. DWORD BytesPerSec;    //Sample Rate
  26. WORD  wBlkAlign;      //1
  27. WORD  BitsPerSample;  //Sample size
  28. BYTE  DATA[4];        //"DATA"
  29. DWORD dwDSize;         //Number of Samples
  30. };
  31. class MusicPlace
  32. {
  33. protected:
  34. LPDIRECTSOUNDBUFFER m_lMusBuf;//声音缓冲区对象
  35. public:
  36. MusicPlace(const char* FileName,BOOL m_bgMusic,LPDIRECTSOUND lpDS,DWORD dwFlags=DSBCAPS_CTRLVOLUME);
  37. virtual ~MusicPlace();
  38. public:
  39. BOOL ActionPlay(BOOL bContinue=FALSE);//播放声音
  40. BOOL ActionStop();
  41. BOOL CreateSoundBuffer(LPDIRECTSOUND lpDS,DWORD dwFlags,DWORD dwBufSize,DWORD dwFreq,DWORD dwBitsPerSample,DWORD dwBlkAlign,BOOL bStereo);
  42. BOOL Access(FILE* pFile,DWORD dwSize,DWORD dwPos);//数据访问
  43. BOOL bTrue();
  44. LPDIRECTSOUNDBUFFER GetBuffer(){return m_lMusBuf;}
  45. void CtrlVolume(int vol=0);//设置音量
  46. private:
  47. BOOL m_lenbm;//判断背景音乐
  48. };
  49. #endif