aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2005-05-19 01:54:37 +0000
committerTravis Howell2005-05-19 01:54:37 +0000
commit43a5aff7bc1b06fd58c6b7e299429c88b8decd68 (patch)
tree5f85a6e2cc149eff774930e73d8136adb906634e
parentec400e60b6460551769397d4a8ea8743cc7c6366 (diff)
downloadscummvm-rg350-43a5aff7bc1b06fd58c6b7e299429c88b8decd68.tar.gz
scummvm-rg350-43a5aff7bc1b06fd58c6b7e299429c88b8decd68.tar.bz2
scummvm-rg350-43a5aff7bc1b06fd58c6b7e299429c88b8decd68.zip
Correct subtitle colors in C64 maniac.
svn-id: r18180
-rw-r--r--scumm/actor.cpp12
-rw-r--r--scumm/script_v2.cpp8
2 files changed, 15 insertions, 5 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp
index 4047fe5b8c..6c25fc923a 100644
--- a/scumm/actor.cpp
+++ b/scumm/actor.cpp
@@ -852,6 +852,9 @@ void ScummEngine::putActors() {
}
}
+static const int c64MMActorTalkColor[25] = {
+ 1, 7, 2, 14, 8, 15, 3, 7, 7, 15, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 1, 7
+};
static const int v1MMActorTalkColor[25] = {
1, 7, 2, 14, 8, 1, 3, 7, 7, 12, 1, 13, 1, 4, 5, 5, 4, 3, 1, 5, 1, 1, 1, 7, 7
};
@@ -859,8 +862,13 @@ static const int v1MMActorTalkColor[25] = {
void ScummEngine::setupV1ActorTalkColor() {
int i;
- for (i = 1; i < _numActors; i++)
- _actors[i]._talkColor = v1MMActorTalkColor[i];
+ for (i = 1; i < _numActors; i++) {
+ if (_platform == Common::kPlatformC64) {
+ _actors[i]._talkColor = c64MMActorTalkColor[i];
+ } else {
+ _actors[i]._talkColor = v1MMActorTalkColor[i];
+ }
+ }
}
void ScummEngine::showActors() {
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 122d77fa53..475cf94ca2 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -421,10 +421,12 @@ void ScummEngine_v2::decodeParseString() {
_string[textSlot].center = false;
_string[textSlot].overhead = false;
- if (_gameId == GID_MANIAC) {
- // Demos don't set subtitle color before display first subtitle.
- if (_demoMode && _actorToPrintStrFor == 0xFF)
+ if (_gameId == GID_MANIAC && _actorToPrintStrFor == 0xFF) {
+ if (_platform == Common::kPlatformC64) {
+ _string[textSlot].color = 14;
+ } else if (_demoMode) {
_string[textSlot].color = (_version == 2) ? 15 : 1;
+ }
}
actorTalk(buffer);