////////////////////////////////////////////////////////////////////////////
//  StarSoldier PS-BB				:	怀菽迠謽A
//
//	create	2002/12/16	yamamori	:	
//
////////////////////////////////////////////////////////////////////////////

/************************/
/*	BGM撉傒崬傒			*/
/************************/
BgmLoad(no, play, wait)
{
    new	id[32];
    new str_bd[256], str_hd[256], str_sq[256];

	soundBgmStop();
	if(no == -1) return;

	sprintf(id, "bgm_%02d", no);
    xmlGetAttr("BGM", id, "bd", str_bd);
    xmlGetAttr("BGM", id, "hd", str_hd);
    xmlGetAttr("BGM", id, "sq", str_sq);

    soundBgmLoadStart(str_bd, str_hd, str_sq);
	if(wait){
		soundBgmLoadWait();
		if(play){
			soundBgmSeek(0);
			soundBgmPlay();
		}
	}
}

/****************************/
/*	BGM曄峏					*/
/*	0:捠忢BGM(草嫩晅偒)		*/
/*	1:捠忢BGM				*/
/*	2:PowerUpBGM(草嫩晅偒)	*/
/*	3:PowerUpBGM			*/
/*	4:谆捋BGM				*/
/*	5:嚼疤挹草BGM			*/
/*	6:矫凹薷乇BGM			*/
/****************************/
BgmChange(no)
{
	soundBgmStop();
	soundBgmSeek(BgmTick[no]);
	soundBgmPlay();
}

BgmRet()
{
	if(sbSts){
		BgmChange(5);
	} else
	if(razaroFlag){
		BgmChange(4);
	} else
	if(ShieldDamage){
		BgmChange(3);
	} else {
		BgmChange(1);
	}
}


/************************/
/*						*/
/************************/
SeLoad(no)
{
    new id[32];
    new str_bd[256], str_hd[256];

    sprintf( id, "se_%02d", no );
    xmlGetAttr( "SE", id, "bd", str_bd );
    xmlGetAttr( "SE", id, "hd", str_hd );

    soundSeLoadStart(str_bd, str_hd);
	soundSeLoadWait();
}


/************************/
/*						*/
/************************/
SoundEffect(no)
{
	new	i;

	if(SoundRequestCnt < 8){
		for(i=0; i<SoundRequestCnt; i++){
			if(SeReqBuf[i] == no) return;
		}
		SeReqBuf[SoundRequestCnt++] = no;
	} else {
		printf("Sound request over!");
	}
}

SoundEffectJob()
{
	new	i;

	if(SoundRequestCnt){
		soundSePlay(SeReqBuf[0], 0x7F);
		for(i=1; i<8; i++) SeReqBuf[i-1] = SeReqBuf[i];
		SoundRequestCnt--;
	}
}

SoundEffectInit()
{
	new	i;

	SoundRequestCnt = 0;
	for(i=0; i<8; i++) SeReqBuf[i] = 0;
}

