Пример #1
0
void CSoundManager::PauseAllSongs(bool bPause)
{
	// alle pausieren
	//
	if (bPause == true)
	{
		// Musik stoppen
		//
		for (int i = 0; i < MAX_SONGS; i++)
		if (its_Songs[i] != NULL)
		{
			if (FMUSIC_IsPlaying(its_Songs[i]->SongData))
				FMUSIC_SetPaused(its_Songs[i]->SongData, true);
		}

		// Sounds stoppen
		//
		for (int i = 0; i < MAX_SOUNDS; i++)
		if (its_Sounds[i] != NULL)
			StopWave(i);			
	}

	// alle wieder spielen lassen
	//
	else
	{
		// Musik weiter spielen
		//
		for (int i = 0; i < MAX_SONGS; i++)
		if (its_Songs[i] != NULL)
		{
				FMUSIC_SetPaused(its_Songs[i]->SongData, false);
		}
	}
}
Пример #2
0
static inline VOID M_ResumeMusic(VOID)
{
	if (mod && FMUSIC_GetPaused(mod))
		FMUSIC_SetPaused(mod, FALSE);
	if (fsoundchannel != -1 && FSOUND_GetPaused(fsoundchannel))
		FSOUND_SetPaused(fsoundchannel, FALSE);
}
Пример #3
0
static inline VOID M_PauseMusic(VOID)
{
	if (mod && !FMUSIC_GetPaused(mod))
		FMUSIC_SetPaused(mod, TRUE);
	if (fsoundchannel != -1 && FSOUND_IsPlaying(fsoundchannel))
		FSOUND_SetPaused(fsoundchannel, TRUE);
}
Пример #4
0
void CSoundManager::PlayPaused(void)
{
	for (int i = 0; i < MAX_SONGS; i++)
	if (its_Songs[i] != NULL)
	{		
		if (WasPlaying[i])
			FMUSIC_SetPaused(its_Songs[i]->SongData, false);
	}
}
Пример #5
0
//===========================================================================
// DM_FModExtPause
//===========================================================================
void DM_FModExtPause(int pause)
{
	if(!ext_inited)
		return;
	//ext_playing = !pause;
	if(module)
		FMUSIC_SetPaused(module, pause != 0);
	if(stream)
		FSOUND_SetPaused(stream_channel, pause != 0);
}
Пример #6
0
void CSoundManager::PausePlaying(void)
{
	for (int i = 0; i < MAX_SONGS; i++)
	if (its_Songs[i] != NULL)
	{
		WasPlaying[i] = (FMUSIC_IsPlaying(its_Songs[i]->SongData) &&
						 FMUSIC_GetPaused(its_Songs[i]->SongData) == false);

		if (WasPlaying[i])
			FMUSIC_SetPaused(its_Songs[i]->SongData, true);
	}
}
Пример #7
0
bool CSoundManager::StopSong(int Nr, bool Paused)
{
	if (its_Songs[Nr] == NULL)
		return false;

	SetSongVolume(Nr, its_Songs[Nr]->Volume);

	if (Paused == false)
		FMUSIC_StopSong(its_Songs[Nr]->SongData);			// Ganz anhalten ?
	else
		FMUSIC_SetPaused(its_Songs[Nr]->SongData, true);		// oder nur pausieren ?

	return true;
} // StopSong
Пример #8
0
bool CSong::Update(void)
{
	// Spielt der Song garnicht ? Dann brauchen wir ihn auch nicht zu bearbeiten =)
	// 
	if (!FMUSIC_IsPlaying(SongData))
		return false;

	// Fadet der Song grade ?
	// 
	if (FadingVolume != 0.0f)
	{
		Volume += FadingVolume SYNC;

		// Grenze Überschritten ?
		if ((FadingVolume > 0.0f &&
		 	 Volume >= FadingEnd) ||
					
			(FadingVolume < 0.0f &&
			 Volume <= FadingEnd))
		{
			// Beim Anhalten des Songs ausschalten oder pausieren ?
			if (FadingVolume < 0.0f)
			{
				if (FadingPaused == false)
					FMUSIC_StopSong(SongData);			// Ganz anhalten ?
				else
					FMUSIC_SetPaused(SongData, true);	// oder nur pausieren ?
			}

			FadingVolume = 0.0f;
			Volume		 = float(FadingEnd);
		}
		FMUSIC_SetMasterVolume(SongData, (int)(Volume*pSoundManager->its_GlobalMusicVolume/100.0f*2.55f));
	}

	return true;
} // Update
Пример #9
0
bool CSoundManager::PlaySong(int Nr, bool Paused)
{
	if (false == InitSuccessfull)
		return false;

	if (its_Songs[Nr] == NULL)
		return false;	

	if (Paused == false)
	{
		FMUSIC_PlaySong(its_Songs[Nr]->SongData);			// Von vorne abspielen ?
		its_Songs[Nr]->FadingVolume = 0.0f;
		SetSongVolume(Nr, its_GlobalMusicVolume);
	}
	else
	{
		SetSongVolume(Nr, its_Songs[Nr]->Volume);
		FMUSIC_SetPaused(its_Songs[Nr]->SongData, false);	// oder Pause aufheben ?
	}

	CurrentSongNr = Nr;

	return true;
} // PlaySong