diff options
author | James Brown | 2002-10-18 04:33:46 +0000 |
---|---|---|
committer | James Brown | 2002-10-18 04:33:46 +0000 |
commit | c84d12e8d230cecb6268367d2b1604da8288da83 (patch) | |
tree | b034ca1f39948d744f83bb7de8234297dc19f7bc | |
parent | 12f491211db8ef9a703e0adc0185ee7616dbe5d9 (diff) | |
download | scummvm-rg350-c84d12e8d230cecb6268367d2b1604da8288da83.tar.gz scummvm-rg350-c84d12e8d230cecb6268367d2b1604da8288da83.tar.bz2 scummvm-rg350-c84d12e8d230cecb6268367d2b1604da8288da83.zip |
Close in on the o6_wait:actDrawn problem
svn-id: r5181
-rw-r--r-- | scumm/script_v2.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp index 773e994f6b..91dcfa75b1 100644 --- a/scumm/script_v2.cpp +++ b/scumm/script_v2.cpp @@ -2377,16 +2377,19 @@ void Scumm::o6_wait() return; break; case 226:{ /* wait until actor drawn */ - Actor *a = derefActorSafe(pop(), "o6_wait:226"); + int actnum = pop(); + Actor *a = derefActorSafe(actnum, "o6_wait:226"); int offs = (int16)fetchScriptWord(); - return; // FIXME - // This wait command doesn't return at the + // FIXME: This wait command doesn't return at the // correct times, which causes several script freezes // in The Dig. Eg, planetarium lightbridge, // and taking the rod in the museum AFTER looking at - // all the displays. Why? Is our code too optimised - // vs. the original? + // all the displays. This is testing actor 3 (Ego), + // so I'm guessing it's something to do with the way + // ego doesn't always stop his mouth moving. + if (actnum == 3) + return; if (a && a->isInCurrentRoom() && a->needRedraw) { _scriptPointer += offs; |