aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schickel2009-08-12 17:10:47 +0000
committerJohannes Schickel2009-08-12 17:10:47 +0000
commit8086aff0511bef674d7e981f74392b2cceafd386 (patch)
tree5e4aec3d08289eb05ae24f8ee5751fd87c1ca54f
parentcf336367e5947f55f1cd79fd6773a5092d6b2352 (diff)
downloadscummvm-rg350-8086aff0511bef674d7e981f74392b2cceafd386.tar.gz
scummvm-rg350-8086aff0511bef674d7e981f74392b2cceafd386.tar.bz2
scummvm-rg350-8086aff0511bef674d7e981f74392b2cceafd386.zip
Implement difference for the Kyrandia 1 Amiga version in TextDisplayer::printCharacterText.
svn-id: r43320
-rw-r--r--engines/kyra/text.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/engines/kyra/text.cpp b/engines/kyra/text.cpp
index 20094a45ab..a20e94fc1f 100644
--- a/engines/kyra/text.cpp
+++ b/engines/kyra/text.cpp
@@ -226,19 +226,25 @@ void TextDisplayer::printText(const char *str, int x, int y, uint8 c0, uint8 c1,
}
void TextDisplayer::printCharacterText(const char *text, int8 charNum, int charX) {
- uint8 colorTable[] = {0x0F, 0x09, 0xC9, 0x80, 0x5, 0x81, 0x0E, 0xD8, 0x55, 0x3A, 0x3a};
int top, left, x1, x2, w, x;
char *msg;
- uint8 color = colorTable[charNum];
text = preprocessString(text);
int lineCount = buildMessageSubstrings(text);
w = getWidestLineWidth(lineCount);
x = charX;
calcWidestLineBounds(x1, x2, w, x);
- if (_vm->gameFlags().platform == Common::kPlatformAmiga)
+ uint8 color = 0;
+ if (_vm->gameFlags().platform == Common::kPlatformAmiga) {
+ const uint8 colorTable[] = { 0x1F, 0x1B, 0xC9, 0x80, 0x1E, 0x81, 0x11, 0xD8, 0x55, 0x3A, 0x3A };
+ color = colorTable[charNum];
+
setTextColor(color);
+ } else {
+ const uint8 colorTable[] = { 0x0F, 0x09, 0xC9, 0x80, 0x05, 0x81, 0x0E, 0xD8, 0x55, 0x3A, 0x3A };
+ color = colorTable[charNum];
+ }
for (int i = 0; i < lineCount; ++i) {
top = i * 10 + _talkMessageY;