[Scummvm-cvs-logs] CVS: scummvm/scumm script_v2.cpp,2.4,2.5

James Brown ender at users.sourceforge.net
Sun Apr 20 10:08:03 CEST 2003


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

Modified Files:
	script_v2.cpp 
Log Message:
Better o2_actorSet stuff


Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v2.cpp,v
retrieving revision 2.4
retrieving revision 2.5
diff -u -d -r2.4 -r2.5
--- script_v2.cpp	20 Apr 2003 16:59:52 -0000	2.4
+++ script_v2.cpp	20 Apr 2003 17:07:25 -0000	2.5
@@ -136,7 +136,7 @@
 		OPCODE(o5_pickupObjectOld),
 		OPCODE(o5_animateActor),
 		OPCODE(o5_actorFollowCamera),
-		OPCODE(o5_actorSet),
+		OPCODE(o2_actorSet),
 		/* 54 */
 		OPCODE(o5_setObjectName),
 		OPCODE(o5_actorFromPos),
@@ -216,7 +216,7 @@
 		OPCODE(o5_getObjectOwner),
 		OPCODE(o5_animateActor),
 		OPCODE(o5_panCameraTo),
-		OPCODE(o5_actorSet),
+		OPCODE(o2_actorSet),
 		/* 94 */
 		OPCODE(o5_print),
 		OPCODE(o5_actorFromPos),
@@ -296,7 +296,7 @@
 		OPCODE(o5_pickupObjectOld),
 		OPCODE(o5_animateActor),
 		OPCODE(o5_actorFollowCamera),
-		OPCODE(o5_actorSet),
+		OPCODE(o2_actorSet),
 		/* D4 */
 		OPCODE(o5_setObjectName),
 		OPCODE(o5_actorFromPos),
@@ -560,28 +560,32 @@
 }
 
 void Scumm_v2::o2_actorSet() {
-	int arg1 = getVarOrDirectByte(0x80);
-	int arg2 = getVarOrDirectByte(0x40);
+	int act = getVarOrDirectByte(0x80);
+	int arg = getVarOrDirectByte(0x40);
+	Actor *a = derefActorSafe(act, "actorSet");
+
+	if (!a)
+		return;
 
 	switch (fetchScriptByte()) {
-		case 1:
-			warning("o2_actorSet(%d, %d) - SoundThingy Not Implemented", arg1, arg2);
+		case 1: 	// Actor Sound
+			a->sound[0] = arg;
 			break;
 
-		case 2:
-			warning("o2_actorSet(%d, %d) - Init(?) Not Implemented", arg1, arg2);
+		case 2:		// Unknown - Init?
+			warning("o2_actorSet(%d, %d) - Init(?) Not Implemented", act, arg);
 			break;
 
-		case 3:
-			warning("o2_actorSet(%d, %d) - SetName Not Implemented", arg1, arg2);
+		case 3:		// Actor Name
+			loadPtrToResource(rtActorName, a->number, NULL);
 			break;
 
-		case 4:
-			warning("o2_actorSet(%d, %d) - Costume Not Implemented", arg1, arg2);
+		case 4:		// Actor Costume
+			a->setActorCostume(arg);
 			break;
 
-		case 5:
-			warning("o2_actorSet(%d, %d) - TextColor Not Implemented", arg1, arg2);
+		case 5:		// Talk Color
+			a->talkColor = arg;
 			break;
 	}
 }





More information about the Scummvm-git-logs mailing list