aboutsummaryrefslogtreecommitdiff
path: root/engines/wintermute/base/base_file_manager.cpp
diff options
context:
space:
mode:
authorEinar Johan Trøan Sømåen2012-08-13 04:37:07 +0200
committerEinar Johan Trøan Sømåen2012-08-13 04:37:07 +0200
commit101ad689c5063e3eb91a2255ba154348069b14ad (patch)
treeb6398391ceccf8d5dbea4db2fb63f28dbb8b0451 /engines/wintermute/base/base_file_manager.cpp
parenta3703506919a67173b3447115cdc85c0f1711ed6 (diff)
downloadscummvm-rg350-101ad689c5063e3eb91a2255ba154348069b14ad.tar.gz
scummvm-rg350-101ad689c5063e3eb91a2255ba154348069b14ad.tar.bz2
scummvm-rg350-101ad689c5063e3eb91a2255ba154348069b14ad.zip
WINTERMUTE: Add language-filtering for Czech, Italian, Polish and Russian.
No detection-support is added for those languages at this point though.
Diffstat (limited to 'engines/wintermute/base/base_file_manager.cpp')
-rw-r--r--engines/wintermute/base/base_file_manager.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/engines/wintermute/base/base_file_manager.cpp b/engines/wintermute/base/base_file_manager.cpp
index f7a3b6a3fb..01b11352b5 100644
--- a/engines/wintermute/base/base_file_manager.cpp
+++ b/engines/wintermute/base/base_file_manager.cpp
@@ -53,7 +53,8 @@ namespace Wintermute {
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
-BaseFileManager::BaseFileManager() {
+BaseFileManager::BaseFileManager(Common::Language lang) {
+ _language = lang;
initPaths();
registerPackages();
}
@@ -191,10 +192,18 @@ bool BaseFileManager::registerPackages() {
}
// Avoid registering all the language files
// TODO: Select based on the gameDesc.
- if (fileIt->getParent().getName() == "language") {
+ if (_language != Common::UNK_LANG && fileIt->getParent().getName() == "language") {
Common::String parentName = fileIt->getParent().getName();
Common::String dcpName = fileIt->getName();
- if (fileIt->getName() != "english.dcp") {
+ if (_language == Common::EN_ANY && fileIt->getName() != "english.dcp") {
+ continue;
+ } else if (_language == Common::CZ_CZE && fileIt->getName() != "czech.dcp") {
+ continue;
+ } else if (_language == Common::IT_ITA && fileIt->getName() != "italian.dcp") {
+ continue;
+ } else if (_language == Common::PL_POL && fileIt->getName() != "polish.dcp") {
+ continue;
+ } else if (_language == Common::RU_RUS && fileIt->getName() != "russian.dcp") {
continue;
}
}