diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/bladerunner/dialogue_menu.cpp | 2 | ||||
-rw-r--r-- | engines/bladerunner/subtitles.h | 5 | ||||
-rw-r--r-- | engines/bladerunner/ui/kia_section_settings.cpp | 44 |
3 files changed, 27 insertions, 24 deletions
diff --git a/engines/bladerunner/dialogue_menu.cpp b/engines/bladerunner/dialogue_menu.cpp index c3aced0c73..6339fa1ef6 100644 --- a/engines/bladerunner/dialogue_menu.cpp +++ b/engines/bladerunner/dialogue_menu.cpp @@ -119,7 +119,7 @@ bool DialogueMenu::addToList(int answer, bool done, int priorityPolite, int prio #else // fix spelling or entry id 1020 to DRAGONFLY JEWELRY in English version const char *answerTextCP = _textResource->getText(answer); - if (_vm->_languageCode == "E" && answer == 1020 && strcmp(answerTextCP, "DRAGONFLY JEWERLY") == 0) { + if (_vm->_language == Common::EN_ANY && answer == 1020 && strcmp(answerTextCP, "DRAGONFLY JEWERLY") == 0) { answerTextCP = "DRAGONFLY JEWELRY"; } const Common::String &text = answerTextCP; diff --git a/engines/bladerunner/subtitles.h b/engines/bladerunner/subtitles.h index 0a3ec820c8..e52e19c825 100644 --- a/engines/bladerunner/subtitles.h +++ b/engines/bladerunner/subtitles.h @@ -43,9 +43,8 @@ class Font; class Subtitles { friend class Debugger; // - // Subtitles could be in 6 possible languages are EN_ANY, DE_DEU, FR_FRA, IT_ITA, ES_ESP - // with corresponding _vm->_languageCode values: "E", "G", "F", "I", "R", "S" - + // Subtitles could be in 6 possible languages are EN_ANY, DE_DEU, FR_FRA, IT_ITA, RU_RUS, ES_ESP + // with corresponding _vm->_languageCode values: "E", "G", "F", "I", "E", "S" (Russian version is built on top of English one) static const int kMaxNumOfSubtitlesLines = 4; // At least one quote in the game requires 4 lines to be displayed correctly static const int kStartFromSubtitleLineFromTop = 2; // Prefer drawing from this line (the top-most of available subtitle lines index is 0) by default static const int kSubtitlesBottomYOffsetPx = 12; // In pixels. This is the bottom margin beneath the subtitles space diff --git a/engines/bladerunner/ui/kia_section_settings.cpp b/engines/bladerunner/ui/kia_section_settings.cpp index 2d0ab1db85..a2908ad581 100644 --- a/engines/bladerunner/ui/kia_section_settings.cpp +++ b/engines/bladerunner/ui/kia_section_settings.cpp @@ -65,8 +65,13 @@ KIASectionSettings::KIASectionSettings(BladeRunnerEngine *vm) _speechVolume = new UISlider(_vm, sliderCallback, this, Common::Rect(180, 210, 460, 220), _vm->_mixer->kMaxMixerVolume, 0); #endif - _directorsCut = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(180, 364, 270, 374), 0, false); - _subtitlesEnable = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(311, 364, 380, 374), 0, false); // moved further to the right to avoid overlap with 'Designer's Cut' in some language versions (ESP) + if (_vm->_language == Common::RU_RUS) { + _directorsCut = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(180, 364, 436, 374), 0, false); // expanded click-bounding box x-axis + _subtitlesEnable = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(276, 376, 345, 386), 0, false); // moved to new line + } else { + _directorsCut = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(180, 364, 270, 374), 0, false); + _subtitlesEnable = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(311, 364, 380, 374), 0, false); // moved further to the right to avoid overlap with 'Designer's Cut' in some language versions (ESP) + } _playerAgendaSelector = new UIImagePicker(_vm, 5); _uiContainer->add(_musicVolume); @@ -195,28 +200,27 @@ void KIASectionSettings::draw(Graphics::Surface &surface) { if (_vm->_subtitles->isSystemActive()) { // Allow this to be loading as an extra text item in the resource for text options const char *subtitlesTranslation = "Subtitles"; - if (_vm->_languageCode == "E") { - subtitlesTranslation = "Subtitles"; // EN_ANY - } - else if (_vm->_languageCode == "G") { - subtitlesTranslation = "Untertitel"; // DE_DEU - } - else if (_vm->_languageCode == "F") { - subtitlesTranslation = "Sous-titres"; // FR_FRA - } - else if (_vm->_languageCode == "I") { - subtitlesTranslation = "Sottotitoli"; // IT_ITA - } - else if (_vm->_languageCode == "R") { - subtitlesTranslation = "Subtitry"; // RU_RUS - } - else if (_vm->_languageCode == "S") { - subtitlesTranslation = "Subtitulos"; // ES_ESP + if (_vm->_language == Common::EN_ANY) { + subtitlesTranslation = "Subtitles"; // EN_ANY + } else if (_vm->_language == Common::DE_DEU) { + subtitlesTranslation = "Untertitel"; // DE_DEU + } else if (_vm->_language == Common::FR_FRA) { + subtitlesTranslation = "Sous-titres"; // FR_FRA + } else if (_vm->_language == Common::IT_ITA) { + subtitlesTranslation = "Sottotitoli"; // IT_ITA + } else if (_vm->_language == Common::RU_RUS) { + subtitlesTranslation = "Subtitry"; // RU_RUS + } else if (_vm->_language == Common::ES_ESP) { + subtitlesTranslation = "Subtitulos"; // ES_ESP } const char *textSubtitles = strcmp(_vm->_textOptions->getText(42), "") == 0? subtitlesTranslation : _vm->_textOptions->getText(42); // +1 to the max of original index of textOptions which is 41 - _vm->_mainFont->drawColor(textSubtitles, surface, 323, 365, 0x7751); // moved further to the right to avoid overlap with 'Designer's Cut' in some language versions (ESP) + if (_vm->_language == Common::RU_RUS) { + _vm->_mainFont->drawColor(textSubtitles, surface, 288, 376, 0x7751); // special case for Russian version, put the option in a new line to avoid overlap + } else { + _vm->_mainFont->drawColor(textSubtitles, surface, 323, 365, 0x7751); // moved further to the right to avoid overlap with 'Designer's Cut' in some language versions (ESP) + } } _playerAgendaSelector->drawTooltip(surface, _mouseX, _mouseY); |