[Scummvm-cvs-logs] CVS: scummvm/scumm sprite_he.cpp,1.28,1.29

kirben kirben at users.sourceforge.net
Tue Feb 22 21:10:27 CET 2005


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

Modified Files:
	sprite_he.cpp 
Log Message:

Another sprite function.


Index: sprite_he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sprite_he.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- sprite_he.cpp	23 Feb 2005 04:35:20 -0000	1.28
+++ sprite_he.cpp	23 Feb 2005 05:09:14 -0000	1.29
@@ -220,10 +220,30 @@
 // spriteGroupGet functions
 //
 int ScummEngine_v90he::spriteGroupGet_allocateGroupSpritesList(int spriteGroupId) {
+	int i, j, sprites = 0;
+
 	checkRange(_varNumSpriteGroups, 1, spriteGroupId, "Invalid sprite group %d");
 
-	// TODO
-	return 0;
+	for (i = 1; i < _varNumSprites; i++) {
+		if (_spriteTable[i].group_num == spriteGroupId)
+			sprites++;
+	}
+
+	if (!sprites)
+		return 0;
+
+	writeVar(0, 0);
+	defineArray(0, kDwordArray, 0, 0, 0, sprites);
+	writeArray(0, 0, 0, sprites);
+	
+	i = _varNumSpriteGroups - 1;
+	while (i) {
+		if (_spriteTable[i].group_num == spriteGroupId)
+			writeArray(0, 0, i, j++);
+		i--;
+	}
+	
+	return readVar(0);
 }
 
 int ScummEngine_v90he::spriteGroupGet_field_10(int spriteGroupId) {





More information about the Scummvm-git-logs mailing list