aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2003-05-23 12:07:36 +0000
committerMax Horn2003-05-23 12:07:36 +0000
commitbdaefa6727c645db5e64d5b32db29321d2b0b010 (patch)
tree0ee10376fcb82f0b6fbfc68971e5e4fdeeabe2ed
parentade97e9fe2272c8b094adf4c253f934db8b08b86 (diff)
downloadscummvm-rg350-bdaefa6727c645db5e64d5b32db29321d2b0b010.tar.gz
scummvm-rg350-bdaefa6727c645db5e64d5b32db29321d2b0b010.tar.bz2
scummvm-rg350-bdaefa6727c645db5e64d5b32db29321d2b0b010.zip
don't hardcode 9 but rather use the default actor talk color as given in the (v2) bootscript
svn-id: r7856
-rw-r--r--scumm/script_v2.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 16631148a4..c9d4353cbb 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -412,7 +412,7 @@ void Scumm_v2::decodeParseString() {
_string[textSlot].right = 320;
_string[textSlot].center = false;
_string[textSlot].overhead = false;
- _string[textSlot].color = 9; // light blue
+// _string[textSlot].color = 9; // light blue
_messagePtr = buffer;
switch (textSlot) {
@@ -669,15 +669,18 @@ void Scumm_v2::o2_waitForSentence() {
void Scumm_v2::o2_actorSet() {
int act = getVarOrDirectByte(0x80);
int arg = getVarOrDirectByte(0x40);
- Actor *a = derefActorSafe(act, "actorSet");
+ Actor *a;
int i;
_opcode = fetchScriptByte();
- if (!a) {
- // This case happens in the Zak/MM bootscript exactly once each, to
- // set the default talk color (9).
+ if (act == 0 && _opcode == 5) {
+ // This case happens in the Zak/MM bootscripts, to set the default talk color (9).
+ _string[0].color = arg;
return;
}
+
+ a = derefActorSafe(act, "actorSet");
+ assert(a);
switch (_opcode) {
case 1: // Actor Sound