⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csound.cpp

📁 我在资源网上发布的一个brickshorterjr的代码
💻 CPP
字号:
#include    "CSound.h"


//=========================================================================
//	Name:CSound
//	Desc:All the static members are here to be Init
//
//=========================================================================
HCHANNEL   CSound::c_SplashMusic  =  0;
HCHANNEL   CSound::c_GameMusic    =  0;


//=========================================================================
//	Name:CSound
//	Desc:Constructors
//
//=========================================================================
CSound::CSound( HGE	*hgeEngine , hgeResourceManager *resMgr )
{
	m_hgeEngine    =  hgeEngine;
	m_resMgr       =  resMgr;
	m_SoundresMgr  =  NULL;
	
	m_GameMusic    =  NULL;
	m_SplashMusic  =  NULL;
	 
	m_bomb       =  NULL;
	m_dirChange  =  NULL;
	m_expl[0]    =  NULL;
	m_expl[1]    =  NULL;
	m_expl[2]    =  NULL;
	m_expl[3]    =  NULL;
	m_expl[4]    =  NULL;
	m_shoot      =  NULL;
	m_levelup    =  NULL;
	m_gameover   =  NULL;
	m_background =  NULL;
	m_Rotate     =  NULL;
	m_Light      =  NULL;
	m_Color      =  NULL;

	m_SoundBackgournd = true;
	m_Effect = true;

}

//=========================================================================
//	Name:Init
//	Desc:Init the sound system
//
//=========================================================================
bool    CSound::Init()
{
	m_SoundresMgr =	new	hgeResourceManager( "data/Music.txt" );
	//m_SplashMusic=  m_resMgr->GetMusic( "SplashMusic");
	//m_GameMusic  =  m_resMgr->GetMusic( "GameMusic");

	m_bomb		=	m_SoundresMgr->GetEffect( "Bomb" );
	m_dirChange	=	m_SoundresMgr->GetEffect( "DirChange" );
	m_shoot		=	m_SoundresMgr->GetEffect( "Shoot" );
	m_levelup	=	m_SoundresMgr->GetEffect( "Levelup" );
	m_gameover	=	m_SoundresMgr->GetEffect( "Gameover" );
	m_background=	m_SoundresMgr->GetEffect( "Background" );
	m_Rotate    =	m_SoundresMgr->GetEffect( "Rotate" );
	m_Light     =   m_SoundresMgr->GetEffect( "Light" );
	m_Color     =   m_SoundresMgr->GetEffect( "Color" );
	
	char name[64] = {0};
	for( int i = 0; i < SOUND_EXPL_COU; ++ i )
	{
		sprintf( name, "Expl%d", i + 3 );
		m_expl[i]	=	m_SoundresMgr->GetEffect( name );
	}
	return true;
}

//=========================================================================
//	Name:Release
//	Desc:
//
//=========================================================================
void    CSound::Release()
{
	SAFE_DELETE( m_SoundresMgr );
	//do nothing
}

void    CSound::SoundSplash( e_SplashSound type )
{
	/*switch(  )		m_hgeEngine->Channel_Stop( m_SplashchlBomb );
		
		m_hgeEngine->Effect_PlayEx( m_SplashExpl, 80, 0, 1 ); */
}


void    CSound::SoundGame(e_GameSound type , int count)
{

	if( !m_Effect )
		return;

	switch( type )
	{
	case SOUND_GAME_BOMB:
		m_hgeEngine->Effect_PlayEx( m_bomb, 80, 0, 1, false ); 
		break;

	case SOUND_GAME_DIRCHANGE:
		m_hgeEngine->Effect_PlayEx( m_dirChange, 80, 0, 1, false ); 
		break;

	case SOUND_GAME_LEVELUP:
		m_hgeEngine->Effect_PlayEx( m_levelup, 80, 0, 1, false ); 
		break;

	case SOUND_GAME_GAMEOVER:
		m_hgeEngine->Effect_PlayEx( m_gameover, 80, 0, 1, false ); 
		break;
		
	case SOUND_GAME_BACKGROUND:
		if( m_SoundBackgournd )
		{
			m_backChl = m_hgeEngine->Effect_PlayEx( m_background, 80, 0, 1, true ); 
		}
		else
		{
			m_hgeEngine->Channel_Stop( m_backChl ); 
		}
		break;

	case SOUND_GAME_EXPL:
		m_hgeEngine->Effect_PlayEx( m_expl[ count - 3 ], 80, 0, 1, false );
		break;	

	case SOUND_GAME_SHORT:
		m_hgeEngine->Effect_PlayEx( m_shoot, 60, 0, 1, false );
		break;

	case SOUND_GAME_ROTATE:
		m_hgeEngine->Effect_PlayEx( m_Rotate, 60, 0, 1, false );
		break;

	case SOUND_GAME_LIGHT:
		m_hgeEngine->Effect_PlayEx( m_Light, 60, 0, 1, false );
		break;

	case SOUND_GAME_COLOR:
		m_hgeEngine->Effect_PlayEx( m_Color, 60, 0, 1, false );
		break;

	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -