aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v72he.cpp
diff options
context:
space:
mode:
authorTravis Howell2005-05-02 07:20:44 +0000
committerTravis Howell2005-05-02 07:20:44 +0000
commit6c34dcc0f2f6e3526e3fe2eee2167a1ff18b94fa (patch)
treeec1e163ee3625c82eab0c76b358abc8ea212c925 /scumm/script_v72he.cpp
parentcd6e22a3b15129a6e474f2752815643a44aff07d (diff)
downloadscummvm-rg350-6c34dcc0f2f6e3526e3fe2eee2167a1ff18b94fa.tar.gz
scummvm-rg350-6c34dcc0f2f6e3526e3fe2eee2167a1ff18b94fa.tar.bz2
scummvm-rg350-6c34dcc0f2f6e3526e3fe2eee2167a1ff18b94fa.zip
Add work around for script bug in the first version of pajama.
svn-id: r17895
Diffstat (limited to 'scumm/script_v72he.cpp')
-rw-r--r--scumm/script_v72he.cpp18
1 files changed, 14 insertions, 4 deletions
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;