diff options
author | Strangerke | 2014-12-12 01:07:47 +0100 |
---|---|---|
committer | Paul Gilbert | 2014-12-12 23:07:57 -0500 |
commit | 5520a763849a4dd7df6cd2eb727ac89294b5790f (patch) | |
tree | d080cf444f8abdeaac74815933f6947c0183d21c /engines/access | |
parent | c82fb8c9571073b95da0f45a6b8beb3000fbfbc0 (diff) | |
download | scummvm-rg350-5520a763849a4dd7df6cd2eb727ac89294b5790f.tar.gz scummvm-rg350-5520a763849a4dd7df6cd2eb727ac89294b5790f.tar.bz2 scummvm-rg350-5520a763849a4dd7df6cd2eb727ac89294b5790f.zip |
ACCESS: Fix speakText behavior
Diffstat (limited to 'engines/access')
-rw-r--r-- | engines/access/access.cpp | 43 |
1 files changed, 18 insertions, 25 deletions
diff --git a/engines/access/access.cpp b/engines/access/access.cpp index bb5414da31..97b08d73c4 100644 --- a/engines/access/access.cpp +++ b/engines/access/access.cpp @@ -216,27 +216,25 @@ void AccessEngine::speakText(ASurface *s, const Common::String &msg) { s->_printOrg = Common::Point(s->_printStart.x, s->_printOrg.y + 9); if ((s->_printOrg.y > _printEnd) && (!lastLine)) { - if (!_sound->_isVoice) { - _events->waitKeyMouse(); - } else { - while (!shouldQuit()) { - _sound->freeSounds(); - Resource *sound = _sound->loadSound(_narateFile + 99, _sndSubFile); - _sound->_soundTable.push_back(SoundEntry(sound, 1)); - _sound->playSound(0); - _scripts->cmdFreeSound(); - - _events->pollEvents(); - - if (_events->isKeyMousePressed()) { - _sndSubFile += soundsLeft; + _events->clearEvents(); + while (!shouldQuit()) { + _sound->freeSounds(); + Resource *sound = _sound->loadSound(_narateFile + 99, _sndSubFile); + _sound->_soundTable.push_back(SoundEntry(sound, 1)); + _sound->playSound(0); + _scripts->cmdFreeSound(); + + _events->pollEvents(); + + if (_events->isKeyMousePressed()) { + _sndSubFile += soundsLeft; + break; + } else { + ++_sndSubFile; + --soundsLeft; + if (soundsLeft == 0) break; - } else { - ++_sndSubFile; - --soundsLeft; - if (soundsLeft == 0) - break; - } + _events->clearEvents(); } } @@ -253,11 +251,6 @@ void AccessEngine::speakText(ASurface *s, const Common::String &msg) { if (soundsLeft == 0) return; - if (!_sound->_isVoice) { - _events->waitKeyMouse(); - return; - } - for (;;) { _sound->freeSounds(); Resource *res = _sound->loadSound(_narateFile + 99, _sndSubFile); |