aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/charset.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2007-07-22 22:59:08 +0000
committerEugene Sandulenko2007-07-22 22:59:08 +0000
commitb6eedda8858eca9926619fec03dd3075ed4fa7ac (patch)
treec13f1c7e454aaf1ec521fab9522319ae6429867f /engines/scumm/charset.cpp
parent8c21abc990c3130b2e76bb33b8642a74ce145574 (diff)
downloadscummvm-rg350-b6eedda8858eca9926619fec03dd3075ed4fa7ac.tar.gz
scummvm-rg350-b6eedda8858eca9926619fec03dd3075ed4fa7ac.tar.bz2
scummvm-rg350-b6eedda8858eca9926619fec03dd3075ed4fa7ac.zip
- Fix wrong languages in Chinese COMI
- Fix credits rendering in Chinese COMI svn-id: r28167
Diffstat (limited to 'engines/scumm/charset.cpp')
-rw-r--r--engines/scumm/charset.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/engines/scumm/charset.cpp b/engines/scumm/charset.cpp
index 3c910bd239..2271bf53a1 100644
--- a/engines/scumm/charset.cpp
+++ b/engines/scumm/charset.cpp
@@ -371,7 +371,7 @@ int CharsetRenderer::getStringWidth(int arg, const byte *text) {
break;
}
} else {
- if (chr == '@')
+ if (chr == '@' && _vm->_language != Common::ZH_TWN)
continue;
if (chr == 255 || (_vm->_game.version <= 6 && chr == 254)) {
chr = text[pos++];
@@ -397,6 +397,15 @@ int CharsetRenderer::getStringWidth(int arg, const byte *text) {
continue;
}
}
+
+ // Some localizations may override colors
+ // See credits in Chinese COMI
+ if (chr == '^' && pos == 1) {
+ if (text[pos] == 'c') {
+ pos += 4;
+ chr = text[pos++];
+ }
+ }
}
if ((chr & 0x80) && _vm->_useCJKMode) {
pos++;