[Scummvm-cvs-logs] SF.net SVN: scummvm: [28167] scummvm/trunk/engines/scumm
sev at users.sourceforge.net
sev at users.sourceforge.net
Mon Jul 23 00:59:09 CEST 2007
Revision: 28167
http://scummvm.svn.sourceforge.net/scummvm/?rev=28167&view=rev
Author: sev
Date: 2007-07-22 15:59:08 -0700 (Sun, 22 Jul 2007)
Log Message:
-----------
- Fix wrong languages in Chinese COMI
- Fix credits rendering in Chinese COMI
Modified Paths:
--------------
scummvm/trunk/engines/scumm/charset.cpp
scummvm/trunk/engines/scumm/string.cpp
Modified: scummvm/trunk/engines/scumm/charset.cpp
===================================================================
--- scummvm/trunk/engines/scumm/charset.cpp 2007-07-22 21:01:31 UTC (rev 28166)
+++ scummvm/trunk/engines/scumm/charset.cpp 2007-07-22 22:59:08 UTC (rev 28167)
@@ -371,7 +371,7 @@
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 @@
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++;
Modified: scummvm/trunk/engines/scumm/string.cpp
===================================================================
--- scummvm/trunk/engines/scumm/string.cpp 2007-07-22 21:01:31 UTC (rev 28166)
+++ scummvm/trunk/engines/scumm/string.cpp 2007-07-22 22:59:08 UTC (rev 28167)
@@ -172,6 +172,20 @@
if (c == 0x0B)
continue;
+ // Some localizations may override colors
+ // See credits in Chinese COMI
+ if (c == '^' && (buf == _blastTextQueue[i].text + 1)) {
+ int color;
+ switch (*buf) {
+ case 'c':
+ color = buf[3] - '0' + 10 *(buf[2] - '0');
+ _charset->setColor(color);
+
+ buf += 4;
+ c = *buf++;
+ }
+ }
+
if (c != 0 && c != 0xFF && c != '\n') {
if (c & 0x80 && _useCJKMode) {
if (_language == Common::JA_JPN && !checkSJISCode(c)) {
@@ -1060,7 +1074,7 @@
num += (_game.version == 8) ? 4 : 2;
}
} else {
- if (!(chr == '@' && _game.heversion <= 71)) {
+ if (!(chr == '@' && _game.heversion <= 71) || _language == Common::ZH_TWN) {
*dst++ = chr;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list