[Scummvm-cvs-logs] CVS: scummvm/scumm script_v2.cpp,1.30,1.31

James Brown ender at users.sourceforge.net
Thu Oct 17 21:34:07 CEST 2002


Update of /cvsroot/scummvm/scummvm/scumm
In directory usw-pr-cvs1:/tmp/cvs-serv10263/scumm

Modified Files:
	script_v2.cpp 
Log Message:
Close in on the o6_wait:actDrawn problem


Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v2.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- script_v2.cpp	16 Oct 2002 12:23:03 -0000	1.30
+++ script_v2.cpp	18 Oct 2002 04:33:46 -0000	1.31
@@ -2377,16 +2377,19 @@
 			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;





More information about the Scummvm-git-logs mailing list