Fix that Sounds can't restart

Sounds now restart when e.g. scrolling up/down repeatedly.
This commit is contained in:
Bim Overbohm 2013-05-15 10:12:51 +02:00
parent a2c990bd26
commit 517ccbefb5

View file

@ -82,8 +82,18 @@ void Sound::play()
if(mSampleData == NULL)
return;
//flag our sample as playing
playing = true;
if (playing)
{
//replay from start. rewind the sample to the beginning
SDL_LockAudio();
mSamplePos = 0;
SDL_UnlockAudio();
}
else
{
//flag our sample as playing
playing = true;
}
//tell the AudioManager to start playing samples
AudioManager::play();
}
@ -96,8 +106,10 @@ bool Sound::isPlaying() const
void Sound::stop()
{
//flag our sample as playing and rewind its position
SDL_LockAudio();
playing = false;
mSamplePos = 0;
SDL_UnlockAudio();
}
const Uint8 * Sound::getData() const