From 6c34dcc0f2f6e3526e3fe2eee2167a1ff18b94fa Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Mon, 2 May 2005 07:20:44 +0000 Subject: Add work around for script bug in the first version of pajama. svn-id: r17895 --- scumm/script_v72he.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'scumm/script_v72he.cpp') diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp index 506dc46890..9a0e25fb18 100644 --- a/scumm/script_v72he.cpp +++ b/scumm/script_v72he.cpp @@ -1569,13 +1569,23 @@ void ScummEngine_v72he::o72_arrayOps() { void ScummEngine_v72he::o72_talkActor() { Actor *a; - _actorToPrintStrFor = pop(); + int act = pop(); _string[0].loadDefault(); - if (_actorToPrintStrFor != 0xFF) { - a = derefActor(_actorToPrintStrFor, "o72_talkActor"); - _string[0].color = a->_talkColor; + + // A value of 225 can occur when examining the gold in the mine of pajama, after mining the gold. + // This is a script bug, the script should set the subtitle color, not actor number. + // This script bug was fixed in the updated version of pajama. + if (act == 225) { + _string[0].color = act; + } else { + _actorToPrintStrFor = act; + if (_actorToPrintStrFor != 0xFF) { + a = derefActor(_actorToPrintStrFor, "o72_talkActor"); + _string[0].color = a->_talkColor; + } } + actorTalk(_scriptPointer); _scriptPointer += resStrLen(_scriptPointer) + 1; -- cgit v1.2.3