[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.372,2.373 script_v90he.cpp,2.164,2.165

kirben kirben at users.sourceforge.net
Sat Feb 26 17:26:05 CET 2005


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

Modified Files:
	intern.h script_v90he.cpp 
Log Message:

Add floodState struct and rename opcode.


Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.372
retrieving revision 2.373
diff -u -d -r2.372 -r2.373
--- intern.h	26 Feb 2005 12:10:00 -0000	2.372
+++ intern.h	27 Feb 2005 01:20:44 -0000	2.373
@@ -846,10 +846,19 @@
 		const char *desc;
 	};
 
+	struct FloodState {
+		Common::Rect box;
+		int field_10;
+		int field_14;
+		int field_18;
+		int field_1C;
+	};
+
 	int _heObject, _heObjectNum;
 	int _hePaletteNum;
 	
 	const OpcodeEntryV90he *_opcodesV90he;
+	FloodState _floodState;
 	WizParameters _wizParams;
 
 	int _curMaxSpriteId;
@@ -995,7 +1004,7 @@
 	void o90_getSpriteGroupInfo();
 	void o90_setSpriteGroupInfo();
 	void o90_getWizData();
-	void o90_unknown2F();
+	void o90_floodState();
 	void o90_mod();
 	void o90_shl();
 	void o90_shr();

Index: script_v90he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v90he.cpp,v
retrieving revision 2.164
retrieving revision 2.165
diff -u -d -r2.164 -r2.165
--- script_v90he.cpp	26 Feb 2005 11:22:00 -0000	2.164
+++ script_v90he.cpp	27 Feb 2005 01:20:44 -0000	2.165
@@ -99,7 +99,7 @@
 		OPCODE(o90_jumpToScriptUnk),
 		OPCODE(o6_invalid),
 		OPCODE(o6_invalid),
-		OPCODE(o90_unknown2F),
+		OPCODE(o90_floodState),
 		/* 30 */
 		OPCODE(o90_mod),
 		OPCODE(o90_shl),
@@ -1601,35 +1601,41 @@
 	}
 }
 
-void ScummEngine_v90he::o90_unknown2F() {
+void ScummEngine_v90he::o90_floodState() {
 	byte subOp = fetchScriptByte();
 	subOp -= 54;
 
 	switch (subOp) {
 	case 0:
-		pop();
+		_floodState.field_1C = pop();
 		break;
 	case 3:
+		//memset(_floodState, 0);
+		_floodState.box.left = 0;
+		_floodState.box.top = 0;
+		_floodState.box.right = 640;
+		_floodState.box.bottom = 480;
 		break;
 	case 11:
-		pop();
-		pop();
+		_floodState.field_14 = pop();
+		_floodState.field_10 = pop();
 		break;
 	case 12:
-		pop();
+		_floodState.field_18 = pop();
 		break;
 	case 13:
-		pop();
-		pop();
-		pop();
-		pop();
+		_floodState.box.bottom = pop();
+		_floodState.box.right = pop();
+		_floodState.box.top = pop();
+		_floodState.box.left = pop();
 		break;
 	case 201:
+		//floodState(_floodState);
 		break;
 	default:
-		error("o90_unknown2F: Unknown case %d", subOp);
+		error("o90_floodState: Unknown case %d", subOp);
 	}
-	debug(1,"o90_unknown2F stub (%d)", subOp);
+	debug(1,"o90_floodState stub (%d)", subOp);
 }
 
 void ScummEngine_v90he::o90_shl() {





More information about the Scummvm-git-logs mailing list