[Scummvm-cvs-logs] CVS: scummvm/scumm sprite_he.cpp,1.117,1.118

kirben kirben at users.sourceforge.net
Sat Apr 2 17:42:46 CEST 2005


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

Modified Files:
	sprite_he.cpp 
Log Message:

Add additional case.


Index: sprite_he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sprite_he.cpp,v
retrieving revision 1.117
retrieving revision 1.118
diff -u -d -r1.117 -r1.118
--- sprite_he.cpp	2 Apr 2005 15:59:02 -0000	1.117
+++ sprite_he.cpp	3 Apr 2005 01:42:06 -0000	1.118
@@ -671,10 +671,20 @@
 void ScummEngine_v90he::spriteInfoSet_flagMarkDirty(int spriteId, int value) {
 	checkRange(_varNumSprites, 1, spriteId, "Invalid sprite %d");
 
-	if (value)
+	switch(value) {
+	case 2:
+		_spriteTable[spriteId].flags &= ~(kSFMarkDirty);
+		_spriteTable[spriteId].flags |= kSFBlitDirectly;
+		break;
+	case 1:
 		_spriteTable[spriteId].flags |= kSFMarkDirty | kSFBlitDirectly;
-	else
+		break;
+	case 0:
 		_spriteTable[spriteId].flags &= ~(kSFMarkDirty | kSFBlitDirectly);
+		break;
+	default:
+		error("spriteInfoSet_flagMarkDirty: Invalid value %d", value);
+	}
 }
 
 void ScummEngine_v90he::spriteInfoSet_flagHasImage(int spriteId, int value) {
@@ -834,12 +844,8 @@
 	checkRange(_varNumSpriteGroups, 1, spriteGroupId, "Invalid sprite group %d");
 
 	for (int i = 1; i < _varNumSprites; i++) {
-		if (_spriteTable[i].groupNum == spriteGroupId) {
-			if (value)
-				_spriteTable[i].flags |= kSFMarkDirty | kSFBlitDirectly;
-			else
-				_spriteTable[i].flags &= ~(kSFMarkDirty | kSFBlitDirectly);
-		}
+		if (_spriteTable[i].groupNum == spriteGroupId)
+			spriteInfoSet_flagMarkDirty(i, value);
 	}
 }
 





More information about the Scummvm-git-logs mailing list