📄 2dsound.cpp
字号:
/********************************************************************
文件名: 2DSOUND.cpp
Copyright (c)2004 红孩儿工作室
创建人 : 卞安
创建时间: 2004-5-18 12:33:30
版本: 1.0
类名: C2DMUSIC
说明:
游戏声音类
用于播放声音
********************************************************************/
#include "BASIC.h"
#include "2DSOUND.h"
//---------------------------------------------------------------
/********************************************************************
函数名 : 构造函数
输入参数:
无
输出参数:
无
功能描述:
将指针设为NULL
全局变量: 无
调用模块: 无
********************************************************************/
C2DSOUND::C2DSOUND()
{
m_pSound = NULL;
m_pSoundManager=NULL;
}
/********************************************************************
函数名 : 析构函数
输入参数:
无
输出参数:
无
功能描述:
删除指针并释放变量
全局变量: 无
调用模块: 无
********************************************************************/
C2DSOUND::~C2DSOUND()
{
SAFE_DELETE(m_pSound);
m_pSoundManager=NULL;
}
/********************************************************************
函数名 : init
输入参数:
hWnd:主窗口
g_pSoundManager:代表主声音设备
输出参数:
TRUE 成功
FALSE 失败
功能描述:
初始化DMUSIC
全局变量: 无
调用模块: 无
********************************************************************/
bool C2DSOUND::init(HWND hWnd,CSoundManager* g_pSoundManager)
{
m_pSoundManager=g_pSoundManager;
//建立一个独占的2个扬声器、44.1KHz,16位的wav声音
if(FAILED(m_pSoundManager->Initialize( hWnd, DSSCL_EXCLUSIVE, 2, 44100, 16 )))return false;
return true;
}
/********************************************************************
函数名 : Load
输入参数:
szFilename:文件的名称
输出参数:
TRUE 成功
FALSE 失败
功能描述:
调入音乐
全局变量: 无
调用模块: 无
********************************************************************/
bool C2DSOUND::Load(char * szFilename)
{
//如果你的声卡支持硬件3D播放,可选上DSBCAPS_CTRL3D,可惜目前大部分的AC97声卡不支持硬件3D播放
if(FAILED(m_pSoundManager->Create( &m_pSound, szFilename, 0, GUID_NULL)))return false;
return true;
}
/********************************************************************
函数名 : Play
输入参数:
无
输出参数:
TRUE 成功
FALSE 失败
功能描述:
播放音乐
全局变量: 无
调用模块: 无
********************************************************************/
bool C2DSOUND::Play()
{
if(FAILED(m_pSound->Play(0,0)))return false;//播放
return true;
}
/********************************************************************
函数名 : Stop
输入参数:
无
输出参数:
TRUE 成功
FALSE 失败
功能描述:
停止播放音乐
全局变量: 无
调用模块: 无
********************************************************************/
bool C2DSOUND::Stop()
{
if(FAILED(m_pSound->Stop()))return false;//播放
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -