[Scummvm-cvs-logs] CVS: scummvm/scumm script_v2.cpp,2.230.2.3,2.230.2.4

James Brown ender at users.sourceforge.net
Sat Mar 13 05:03:00 CET 2004


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10027/scumm

Modified Files:
      Tag: branch-0-6-0
	script_v2.cpp 
Log Message:
Hack around Maniac bug


Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v2.cpp,v
retrieving revision 2.230.2.3
retrieving revision 2.230.2.4
diff -u -d -r2.230.2.3 -r2.230.2.4
--- script_v2.cpp	8 Mar 2004 02:46:42 -0000	2.230.2.3
+++ script_v2.cpp	13 Mar 2004 12:53:43 -0000	2.230.2.4
@@ -438,13 +438,24 @@
 
 	checkRange(_numVariables - 1, 0, var, "Variable %d out of range(r)");
 	debug(6, "readvar(%d) = %d", var, _scummVars[var]);
+
 	return _scummVars[var];
 }
 
 void ScummEngine_v2::writeVar(uint var, int value) {
 	checkRange(_numVariables - 1, 0, var, "Variable %d out of range(r)");
 	debug(6, "writeVar(%d) = %d", var, value);
+
 	_scummVars[var] = value;
+
+	// HACK: Ender's hack around a bug in Maniac. If you take the last dime from
+	// 	 Weird Ed's piggybank, this disables the New Kid option and runs the Jail
+	//	 cutscene. Script 116 sets var[175] to 1, which disables New Kid in 
+	//	 script 164. Unfortunatly, when New Kid is reenabled (var[175] = 0) in
+	//	 script 89, script 164 isn't reran to redraw it. Why? Dunno. Hack? Yes.
+	if ((var == 175) && (_gameId == GID_MANIAC) && 
+	    (vm.slot[_currentScript].number == 89))
+		runScript(164, 0, 0, 0);
 }
 
 void ScummEngine_v2::getResultPosIndirect() {
@@ -790,7 +801,7 @@
 void ScummEngine_v2::o2_verbOps() {
 	int verb = fetchScriptByte();
 	int slot, state;
-	
+
 	switch (verb) {
 	case 0:		// SO_DELETE_VERBS
 		slot = getVarOrDirectByte(PARAM_1) + 1;





More information about the Scummvm-git-logs mailing list