[Scummvm-cvs-logs] SF.net SVN: scummvm: [20597] scummvm/trunk/engines/scumm

kirben at users.sourceforge.net kirben at users.sourceforge.net
Sun Feb 12 01:53:06 CET 2006


Revision: 20597
Author:   kirben
Date:     2006-02-12 01:52:13 -0800 (Sun, 12 Feb 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm?rev=20597&view=rev

Log Message:
-----------
Actor room is only checked in SCUMM 7+

Modified Paths:
--------------
    scummvm/trunk/engines/scumm/intern_he.h
    scummvm/trunk/engines/scumm/script_v5.cpp
    scummvm/trunk/engines/scumm/script_v6.cpp
    scummvm/trunk/engines/scumm/script_v6he.cpp
    scummvm/trunk/engines/scumm/script_v72he.cpp
    scummvm/trunk/engines/scumm/script_v7he.cpp
    scummvm/trunk/engines/scumm/script_v80he.cpp
    scummvm/trunk/engines/scumm/script_v90he.cpp
Modified: scummvm/trunk/engines/scumm/intern_he.h
===================================================================
--- scummvm/trunk/engines/scumm/intern_he.h	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/intern_he.h	2006-02-12 09:52:13 UTC (rev 20597)
@@ -75,7 +75,6 @@
 	void o60_setState();
 	void o60_roomOps();
 	void o60_actorOps();
-	void o60_wait();
 	void o60_kernelSetFunctions();
 	void o60_kernelGetFunctions();
 	void o60_openFile();

Modified: scummvm/trunk/engines/scumm/script_v5.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v5.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v5.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -2551,7 +2551,7 @@
 	case 1:		// SO_WAIT_FOR_ACTOR
 		{
 			Actor *a = derefActorSafe(getVarOrDirectByte(PARAM_1), "o5_wait");
-			if (a && a->isInCurrentRoom() && a->_moving)
+			if (a && a->_moving)
 				break;
 			return;
 		}

Modified: scummvm/trunk/engines/scumm/script_v6.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v6.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v6.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -2192,8 +2192,13 @@
 		offs = fetchScriptWordSigned();
 		actnum = pop();
 		a = derefActor(actnum, "o6_wait:168");
-		if (a->isInCurrentRoom() && a->_moving)
-			break;
+		if (_version >= 7) {
+			if (a->isInCurrentRoom() && a->_moving)
+				break;
+		} else {
+			if (a->_moving)
+				break;
+		}
 		return;
 	case 169:		// SO_WAIT_FOR_MESSAGE Wait for message
 		if (VAR(VAR_HAVE_MSG))

Modified: scummvm/trunk/engines/scumm/script_v6he.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v6he.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v6he.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -277,7 +277,7 @@
 		OPCODE(o6_pop),
 		/* A8 */
 		OPCODE(o6_getActorWidth),
-		OPCODE(o60_wait),
+		OPCODE(o6_wait),
 		OPCODE(o6_getActorScaleX),
 		OPCODE(o6_getActorAnimCounter1),
 		/* AC */
@@ -737,45 +737,6 @@
 	}
 }
 
-void ScummEngine_v60he::o60_wait() {
-	int actnum;
-	int offs = -2;
-	Actor *a;
-	byte subOp = fetchScriptByte();
-
-	switch (subOp) {
-	case 168:		// SO_WAIT_FOR_ACTOR Wait for actor
-		offs = fetchScriptWordSigned();
-		actnum = pop();
-		a = derefActor(actnum, "o60_wait:168");
-		if (a->_moving)
-			break;
-		return;
-	case 169:		// SO_WAIT_FOR_MESSAGE Wait for message
-		if (VAR(VAR_HAVE_MSG))
-			break;
-		return;
-	case 170:		// SO_WAIT_FOR_CAMERA Wait for camera
-		if (camera._cur.x / 8 != camera._dest.x / 8)
-			break;
-		return;
-	case 171:		// SO_WAIT_FOR_SENTENCE
-		if (_sentenceNum) {
-			if (_sentence[_sentenceNum - 1].freezeCount && !isScriptInUse(VAR(VAR_SENTENCE_SCRIPT)))
-				return;
-			break;
-		}
-		if (!isScriptInUse(VAR(VAR_SENTENCE_SCRIPT)))
-			return;
-		break;
-	default:
-		error("o60_wait: default case 0x%x", subOp);
-	}
-
-	_scriptPointer += offs;
-	o6_breakHere();
-}
-
 void ScummEngine_v60he::o60_kernelSetFunctions() {
 	int args[29];
 	int num;

Modified: scummvm/trunk/engines/scumm/script_v72he.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v72he.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v72he.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -256,7 +256,7 @@
 		OPCODE(o6_pop),
 		/* A8 */
 		OPCODE(o6_getActorWidth),
-		OPCODE(o60_wait),
+		OPCODE(o6_wait),
 		OPCODE(o6_getActorScaleX),
 		OPCODE(o6_getActorAnimCounter1),
 		/* AC */

Modified: scummvm/trunk/engines/scumm/script_v7he.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v7he.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v7he.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -253,7 +253,7 @@
 		OPCODE(o6_pop),
 		/* A8 */
 		OPCODE(o6_getActorWidth),
-		OPCODE(o60_wait),
+		OPCODE(o6_wait),
 		OPCODE(o6_getActorScaleX),
 		OPCODE(o6_getActorAnimCounter1),
 		/* AC */

Modified: scummvm/trunk/engines/scumm/script_v80he.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v80he.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v80he.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -255,7 +255,7 @@
 		OPCODE(o6_pop),
 		/* A8 */
 		OPCODE(o6_getActorWidth),
-		OPCODE(o60_wait),
+		OPCODE(o6_wait),
 		OPCODE(o6_getActorScaleX),
 		OPCODE(o6_getActorAnimCounter1),
 		/* AC */

Modified: scummvm/trunk/engines/scumm/script_v90he.cpp
===================================================================
--- scummvm/trunk/engines/scumm/script_v90he.cpp	2006-02-12 09:26:21 UTC (rev 20596)
+++ scummvm/trunk/engines/scumm/script_v90he.cpp	2006-02-12 09:52:13 UTC (rev 20597)
@@ -253,7 +253,7 @@
 		OPCODE(o6_pop),
 		/* A8 */
 		OPCODE(o6_getActorWidth),
-		OPCODE(o60_wait),
+		OPCODE(o6_wait),
 		OPCODE(o6_getActorScaleX),
 		OPCODE(o90_getActorAnimProgress),
 		/* AC */







More information about the Scummvm-git-logs mailing list