- Fixed: s_sound.cpp had its own idea of whether or not sounds were paused

and did not entirely keep it in sync with the sound system's. This meant
  that when starting a new game from the menu, all sounds were played as
  menu sounds until you did something to pause the game, because s_sound.cpp
  thought sounds were unpaused, while the FMOD system thought they were.


SVN r975 (trunk)
This commit is contained in:
Randy Heit 2008-05-16 22:31:26 +00:00
parent 4de3741a05
commit a4da6f1ac1
2 changed files with 9 additions and 8 deletions

View file

@ -1,3 +1,10 @@
May 16, 2008
- Fixed: s_sound.cpp had its own idea of whether or not sounds were paused
and did not entirely keep it in sync with the sound system's. This meant
that when starting a new game from the menu, all sounds were played as
menu sounds until you did something to pause the game, because s_sound.cpp
thought sounds were unpaused, while the FMOD system thought they were.
May 15, 2008 (Changes by Graf Zahl) May 15, 2008 (Changes by Graf Zahl)
- I finally managed to test the translucency options for composite texture - I finally managed to test the translucency options for composite texture
definitions in HIRESTEX. The feature should be complete now. definitions in HIRESTEX. The feature should be complete now.

View file

@ -103,7 +103,6 @@ static void CalcPosVel(fixed_t *pt, AActor *mover, int constz, float pos[3],
// PRIVATE DATA DEFINITIONS ------------------------------------------------ // PRIVATE DATA DEFINITIONS ------------------------------------------------
static bool SoundPaused; // whether sound effects are paused
static bool MusicPaused; // whether music is paused static bool MusicPaused; // whether music is paused
static MusPlayingInfo mus_playing; // music currently being played static MusPlayingInfo mus_playing; // music currently being played
static FString LastSong; // last music that was played static FString LastSong; // last music that was played
@ -279,7 +278,6 @@ void S_Init ()
// no sounds are playing, and they are not paused // no sounds are playing, and they are not paused
MusicPaused = false; MusicPaused = false;
SoundPaused = false;
} }
//========================================================================== //==========================================================================
@ -419,8 +417,6 @@ void S_Start ()
LastLocalSndSeq = LocalSndSeq; LastLocalSndSeq = LocalSndSeq;
} }
SoundPaused = false;
// stop the old music if it has been paused. // stop the old music if it has been paused.
// This ensures that the new music is started from the beginning // This ensures that the new music is started from the beginning
// if it's the same as the last one and it has been paused. // if it's the same as the last one and it has been paused.
@ -1137,10 +1133,9 @@ void S_PauseSound (bool notmusic)
I_PauseSong (mus_playing.handle); I_PauseSong (mus_playing.handle);
MusicPaused = true; MusicPaused = true;
} }
if (GSnd != NULL && !SoundPaused) if (GSnd != NULL)
{ {
GSnd->SetSfxPaused (true); GSnd->SetSfxPaused (true);
SoundPaused = true;
} }
} }
@ -1158,10 +1153,9 @@ void S_ResumeSound ()
I_ResumeSong (mus_playing.handle); I_ResumeSong (mus_playing.handle);
MusicPaused = false; MusicPaused = false;
} }
if (GSnd != NULL && SoundPaused) if (GSnd != NULL)
{ {
GSnd->SetSfxPaused (false); GSnd->SetSfxPaused (false);
SoundPaused = false;
} }
} }