diff options
author | Matthew Hoops | 2010-01-31 22:14:35 +0000 |
---|---|---|
committer | Matthew Hoops | 2010-01-31 22:14:35 +0000 |
commit | 12d983eaf41bd8353849ee8776fc2bbc59808870 (patch) | |
tree | 758f6f6b74508d610c3fc46facbe8296872f1013 /engines/sci | |
parent | 5cf510648a3aaef45d706f457f56cd272e78779e (diff) | |
download | scummvm-rg350-12d983eaf41bd8353849ee8776fc2bbc59808870.tar.gz scummvm-rg350-12d983eaf41bd8353849ee8776fc2bbc59808870.tar.bz2 scummvm-rg350-12d983eaf41bd8353849ee8776fc2bbc59808870.zip |
Make EngineState::getLanguage() check from the resource manager as to what language it has loaded before checking from what ScummVM has set and make kDoAudio use EngineState::getLanguage()
svn-id: r47782
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/engine/ksound.cpp | 2 | ||||
-rw-r--r-- | engines/sci/engine/state.cpp | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/engines/sci/engine/ksound.cpp b/engines/sci/engine/ksound.cpp index 584e58c0be..5352774812 100644 --- a/engines/sci/engine/ksound.cpp +++ b/engines/sci/engine/ksound.cpp @@ -149,7 +149,7 @@ reg_t kDoAudio(EngineState *s, int argc, reg_t *argv) { if (language != -1) s->resMan->setAudioLanguage(language); - return make_reg(0, s->resMan->getAudioLanguage()); + return make_reg(0, s->getLanguage()); } break; case kSciAudioCD: diff --git a/engines/sci/engine/state.cpp b/engines/sci/engine/state.cpp index a773894254..003043b8ca 100644 --- a/engines/sci/engine/state.cpp +++ b/engines/sci/engine/state.cpp @@ -153,7 +153,11 @@ Common::String EngineState::getLanguageString(const char *str, kLanguage lang) c } kLanguage EngineState::getLanguage() { - kLanguage lang = K_LANG_ENGLISH; + kLanguage lang = (kLanguage)resMan->getAudioLanguage(); + if (lang != K_LANG_NONE) + return lang; + + lang = K_LANG_ENGLISH; if (_kernel->_selectorCache.printLang != -1) { lang = (kLanguage)GET_SEL32V(_segMan, _gameObj, printLang); |