diff options
author | Vladimir Menshakov | 2011-06-25 18:20:19 +0400 |
---|---|---|
committer | Vladimir Menshakov | 2011-06-25 18:21:37 +0400 |
commit | 545e482b5ad5cd440070904dc4446f1569d2b066 (patch) | |
tree | 6c0857079ccfe99c3923e5b70538a41f866ea5d5 /engines/dreamweb/dreamweb.cpp | |
parent | 375298f69a69e478447feab360fa9296b53e2698 (diff) | |
download | scummvm-rg350-545e482b5ad5cd440070904dc4446f1569d2b066.tar.gz scummvm-rg350-545e482b5ad5cd440070904dc4446f1569d2b066.tar.bz2 scummvm-rg350-545e482b5ad5cd440070904dc4446f1569d2b066.zip |
DREAMWEB: Reimplemented modifychar and language switching
Diffstat (limited to 'engines/dreamweb/dreamweb.cpp')
-rw-r--r-- | engines/dreamweb/dreamweb.cpp | 55 |
1 files changed, 54 insertions, 1 deletions
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp index e8152e9963..74fcf33407 100644 --- a/engines/dreamweb/dreamweb.cpp +++ b/engines/dreamweb/dreamweb.cpp @@ -65,6 +65,8 @@ DreamWebEngine::DreamWebEngine(OSystem *syst, const DreamWebGameDescription *gam _oldMouseState = 0; _channel0 = 0; _channel1 = 0; + + _language = gameDesc->desc.language; } DreamWebEngine::~DreamWebEngine() { @@ -569,7 +571,58 @@ void DreamWebEngine::loadSounds(uint bank, const Common::String &filename) { } uint8 DreamWebEngine::modifyChar(uint8 c) const { - return c; + if (c < 128) + return c; + + switch(_language) { + case Common::DE_DEU: + switch(c) + { + case 129: + return 'Z' + 3; + case 132: + return 'Z' + 1; + case 142: + return 'Z' + 4; + case 154: + return 'Z' + 6; + case 255: + return 'A' - 1; + case 153: + return 'Z' + 5; + case 148: + return 'Z' + 2; + default: + return c; + } + case Common::ES_ESP: + switch(c) { + case 160: + return 'Z' + 1; + case 130: + return 'Z' + 2; + case 161: + return 'Z' + 3; + case 162: + return 'Z' + 4; + case 163: + return 'Z' + 5; + case 164: + return 'Z' + 6; + case 165: + return ',' - 1; + case 168: + return 'A' - 1; + case 173: + return 'A' - 4; + case 129: + return 'A' - 5; + default: + return c; + } + default: + return c; + } } } // End of namespace DreamWeb |