[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.187,2.188 script_v6.cpp,1.383,1.384 script_v72he.cpp,2.3,2.4 script_v7he.cpp,2.43,2.44

Travis Howell kirben at users.sourceforge.net
Mon Aug 23 07:05:09 CEST 2004


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

Modified Files:
	intern.h script_v6.cpp script_v72he.cpp script_v7he.cpp 
Log Message:

Another He 7.2 function


Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.187
retrieving revision 2.188
diff -u -d -r2.187 -r2.188
--- intern.h	23 Aug 2004 12:19:08 -0000	2.187
+++ intern.h	23 Aug 2004 14:03:54 -0000	2.188
@@ -665,6 +665,7 @@
 	void o72_dimArray();
 	void o72_dim2dimArray();
 	void o72_jumpToScript();
+	void o72_drawObject();
 	void o72_stringLen();
 	void o72_readINI();
 	void o72_unknownF4();

Index: script_v6.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6.cpp,v
retrieving revision 1.383
retrieving revision 1.384
diff -u -d -r1.383 -r1.384
--- script_v6.cpp	23 Aug 2004 10:34:50 -0000	1.383
+++ script_v6.cpp	23 Aug 2004 14:03:54 -0000	1.384
@@ -597,7 +597,7 @@
 }
 
 void ScummEngine_v6::o6_pushByteVar() {
-	push(readVar(fetchScriptByte()));
+	push(readVar(fetchScriptWord()));
 }
 
 void ScummEngine_v6::o6_pushWordVar() {

Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.3
retrieving revision 2.4
diff -u -d -r2.3 -r2.4
--- script_v72he.cpp	23 Aug 2004 12:19:08 -0000	2.3
+++ script_v72he.cpp	23 Aug 2004 14:03:54 -0000	2.4
@@ -559,6 +559,45 @@
 	runScript(script, (flags == 199 || flags == 200), (flags == 195 || flags == 200), args);
 }
 
+void ScummEngine_v72he::o72_drawObject() {
+	int subOp = fetchScriptByte();
+	int state = 0, y = -1, x = -1;
+
+	switch (subOp) {
+	case 62:
+		state = pop();
+		y = pop();
+		x = pop();
+		break;
+	case 63:
+		state = pop();
+		if (state == 0)
+			state = 1;
+		break;
+	case 65:
+		state = 1;
+		y = pop();
+		x = pop();
+	default:
+		warning("o72_drawObject: default case %d", subOp);
+	}
+
+	int object = pop();
+	int objnum = getObjectIndex(object);
+	if (objnum == -1)
+		return;
+
+	if (y != -1 && x != -1) {
+		_objs[objnum].x_pos = x * 8;
+		_objs[objnum].y_pos = y * 8;
+	}
+
+	if (state != -1) {
+		addObjectToDrawQue(objnum);
+		putState(object, state);
+	}
+}
+
 void ScummEngine_v72he::o72_stringLen() {
 	int a, len;
 	byte *addr;

Index: script_v7he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v7he.cpp,v
retrieving revision 2.43
retrieving revision 2.44
diff -u -d -r2.43 -r2.44
--- script_v7he.cpp	23 Aug 2004 11:20:25 -0000	2.43
+++ script_v7he.cpp	23 Aug 2004 14:03:54 -0000	2.44
@@ -511,7 +511,7 @@
 		break;
 
 	default:
-		break;
+		error("o7_startSound invalid case %d", op);
 	}
 }
 





More information about the Scummvm-git-logs mailing list