[Scummvm-cvs-logs] CVS: scummvm/scumm scummvm.cpp,2.196,2.197

Max Horn fingolfin at users.sourceforge.net
Sat May 31 11:12:04 CEST 2003


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv14594

Modified Files:
	scummvm.cpp 
Log Message:
added hack to make The Dig work again, tbus might break all sorts of other things (though I don't really see how, but that won't stop the bugs :-)

Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.196
retrieving revision 2.197
diff -u -d -r2.196 -r2.197
--- scummvm.cpp	31 May 2003 13:45:45 -0000	2.196
+++ scummvm.cpp	31 May 2003 17:58:15 -0000	2.197
@@ -1235,6 +1235,23 @@
 			a->moving = 0;
 		}
 	} else {
+		if (a) {
+			// FIXME: This hack mostly is there to fix the tomb/statue room
+			// in The Dig. What happens there is that when you enter, you are
+			// placed at object 399, coords (307,141), which is in box 25.
+			// But then the entry script locks that and other boxes. Hence
+			// after the entry script runs, you basically can only do one thing
+			// in that room, and that is to leave it - which means the game
+			// is unfinishable.
+			// By calling adjustActorPos, we can solve the problem in this case:
+			// there is a very close box (box 12) which contains point (307,144).
+			// If we call adjustActorPos, Commander Low is moved into that box,
+			// and we can go on. But aqudran looked this up in his IMB DB for
+			// The DIG; and nothing like this is done there. Also I am pretty
+			// sure this used to work in 0.3.1. So apparently something broke
+			// down here, and I have no clue what that might be :-/
+			a-> adjustActorPos();
+		}
 		if (camera._follows) {
 			a = derefActor(camera._follows, "startScene: follows");
 			setCameraAt(a->x, a->y);





More information about the Scummvm-git-logs mailing list