diff options
author | athrxx | 2011-07-24 22:48:30 +0200 |
---|---|---|
committer | athrxx | 2011-07-24 22:49:21 +0200 |
commit | ec553363935b40de63052603b62eccf0d148d31e (patch) | |
tree | b9b2473eb3e513b4de0a2ce3e441ae62412d4966 /engines/kyra | |
parent | e5953776fbf72f39ac7207b2367daa7bb71201fe (diff) | |
download | scummvm-rg350-ec553363935b40de63052603b62eccf0d148d31e.tar.gz scummvm-rg350-ec553363935b40de63052603b62eccf0d148d31e.tar.bz2 scummvm-rg350-ec553363935b40de63052603b62eccf0d148d31e.zip |
LOL: add support for Russian CD-ROM version
Diffstat (limited to 'engines/kyra')
-rw-r--r-- | engines/kyra/detection_tables.h | 53 | ||||
-rw-r--r-- | engines/kyra/lol.cpp | 2 | ||||
-rw-r--r-- | engines/kyra/lol.h | 2 | ||||
-rw-r--r-- | engines/kyra/sequences_lol.cpp | 2 | ||||
-rw-r--r-- | engines/kyra/staticres.cpp | 2 | ||||
-rw-r--r-- | engines/kyra/staticres_lol.cpp | 2 |
6 files changed, 58 insertions, 5 deletions
diff --git a/engines/kyra/detection_tables.h b/engines/kyra/detection_tables.h index d47df47726..468e82cd5b 100644 --- a/engines/kyra/detection_tables.h +++ b/engines/kyra/detection_tables.h @@ -1071,6 +1071,59 @@ const KYRAGameDescription adGameDescs[] = { LOL_CD_FLAGS }, + // Russian fan translation + { + { + "lol", + "CD", + { + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, + { 0, 0, 0, 0 } + }, + Common::EN_ANY, + Common::kPlatformPC, + ADGF_DROPLANGUAGE | ADGF_CD, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) + }, + + { + { + "lol", + "CD", + { + + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, + { 0, 0, 0, 0 } + }, + Common::FR_FRA, + Common::kPlatformPC, + ADGF_DROPLANGUAGE | ADGF_CD, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) + }, + + { + { + "lol", + "CD", + { + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, + { 0, 0, 0, 0 } + }, + Common::RU_RUS, + Common::kPlatformPC, + ADGF_DROPLANGUAGE | ADGF_CD, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) + }, + // Italian fan translation { { diff --git a/engines/kyra/lol.cpp b/engines/kyra/lol.cpp index 8ce77d0021..7d7bb0ed4a 100644 --- a/engines/kyra/lol.cpp +++ b/engines/kyra/lol.cpp @@ -1040,7 +1040,7 @@ char *LoLEngine::getLangString(uint16 id) { char *srcBuffer = _stringBuffer[_lastUsedStringBuffer]; if (_flags.lang == Common::JA_JPN) { decodeSjis(string, srcBuffer); - } else if (_flags.lang == Common::RU_RUS) { + } else if (_flags.lang == Common::RU_RUS && !_flags.isTalkie) { decodeCyrillic(string, srcBuffer); Util::decodeString2(srcBuffer, srcBuffer); } else { diff --git a/engines/kyra/lol.h b/engines/kyra/lol.h index 705110ecfc..3b887c2a86 100644 --- a/engines/kyra/lol.h +++ b/engines/kyra/lol.h @@ -369,7 +369,7 @@ private: static const CharacterPrev _charPreviews[]; static const char *const _charPreviewNamesDefault[]; - static const char *const _charPreviewNamesRussian[]; + static const char *const _charPreviewNamesRussianFloppy[]; // PC98 specific data static const uint16 _charPosXPC98[]; diff --git a/engines/kyra/sequences_lol.cpp b/engines/kyra/sequences_lol.cpp index 7c28e9a2e7..d887133b70 100644 --- a/engines/kyra/sequences_lol.cpp +++ b/engines/kyra/sequences_lol.cpp @@ -316,7 +316,7 @@ int LoLEngine::chooseCharacter() { _screen->printText(_tim->getCTableEntry(53), 72, 184, 0x81, 0x00); _screen->printText(_tim->getCTableEntry(55), 72, 192, 0x81, 0x00); } else { - const char *const *previewNames = _flags.lang == Common::RU_RUS ? _charPreviewNamesRussian : _charPreviewNamesDefault; + const char *const *previewNames = (_flags.lang == Common::RU_RUS && !_flags.isTalkie) ? _charPreviewNamesRussianFloppy : _charPreviewNamesDefault; for (int i = 0; i < 4; ++i) { _screen->fprintStringIntro("%s", _charPreviews[i].x + 16, _charPreviews[i].y + 36, 0xC0, 0x00, 0x9C, 0x120, previewNames[i]); _screen->fprintStringIntro("%d", _charPreviews[i].x + 21, _charPreviews[i].y + 48, 0x98, 0x00, 0x9C, 0x220, _charPreviews[i].attrib[0]); diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index 5fc4f18b39..6e2f8b8e76 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -38,7 +38,7 @@ namespace Kyra { -#define RESFILE_VERSION 75 +#define RESFILE_VERSION 76 namespace { bool checkKyraDat(Common::SeekableReadStream *file) { diff --git a/engines/kyra/staticres_lol.cpp b/engines/kyra/staticres_lol.cpp index 2e5743d3ac..e4029505bf 100644 --- a/engines/kyra/staticres_lol.cpp +++ b/engines/kyra/staticres_lol.cpp @@ -694,7 +694,7 @@ const char *const LoLEngine::_charPreviewNamesDefault[] = { "Conrad" }; -const char *const LoLEngine::_charPreviewNamesRussian[] = { +const char *const LoLEngine::_charPreviewNamesRussianFloppy[] = { "\x80\xAA\xE8\xA5\xAB\0", "\x8C\xA0\xA9\xAA\xAB\0", "\x8A\xA8\xE0\xA0\xAD\0", |