[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.6,1.7 scumm.h,1.19,1.20 scummvm.cpp,1.21,1.22

James Brown ender at users.sourceforge.net
Tue Sep 17 05:53:04 CEST 2002


Update of /cvsroot/scummvm/scummvm/scumm
In directory usw-pr-cvs1:/tmp/cvs-serv28480/scumm

Modified Files:
	actor.cpp scumm.h scummvm.cpp 
Log Message:
Fix newgui crash, and commit patch 600645: Loom flashlight fix



Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- actor.cpp	16 Sep 2002 10:42:12 -0000	1.6
+++ actor.cpp	17 Sep 2002 12:52:53 -0000	1.7
@@ -966,7 +966,7 @@
 	}
 }
 
-void Scumm::setActorRedrawFlags()
+void Scumm::setActorRedrawFlags(bool fg, bool bg)
 {
 	int i, j;
 	uint32 bits;
@@ -974,8 +974,10 @@
 	if (_fullRedraw) {
 		for (j = 0; j < NUM_ACTORS; j++) {
 			Actor *a = derefActor(j);
-			a->needRedraw = true;
-			a->needBgReset = true;
+			if (fg)
+				a->needRedraw = true;
+			if (bg)
+				a->needBgReset = true;
 		}
 	} else {
 		for (i = 0; i < 40; i++) {
@@ -984,8 +986,10 @@
 				for (j = 0; j < NUM_ACTORS; j++) {
 					if ((bits & (1 << j)) && bits != (uint32)(1 << j)) {
 						Actor *a = derefActor(j);
-						a->needRedraw = true;
-						a->needBgReset = true;
+						if (fg)
+							a->needRedraw = true;
+						if (bg)
+							a->needBgReset = true;
 					}
 				}
 			}

Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- scumm.h	17 Sep 2002 09:18:46 -0000	1.19
+++ scumm.h	17 Sep 2002 12:52:53 -0000	1.20
@@ -696,7 +696,7 @@
 
 	void walkActors();
 	void playActorSounds();
-	void setActorRedrawFlags();
+	void setActorRedrawFlags(bool fg, bool bg);
 	void resetActorBgs();
 	void processActors();
 	int getActorFromPos(int x, int y);

Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- scummvm.cpp	17 Sep 2002 09:18:47 -0000	1.21
+++ scummvm.cpp	17 Sep 2002 12:52:53 -0000	1.22
@@ -449,13 +449,13 @@
 		}
 
 		processDrawQue();
-		setActorRedrawFlags();
+		setActorRedrawFlags(true, true);
 		resetActorBgs();
 
 		if (!(_vars[VAR_CURRENT_LIGHTS] & LIGHTMODE_screen) &&
 		      _vars[VAR_CURRENT_LIGHTS] & LIGHTMODE_flashlight) {
 			drawFlashlight();
-			setActorRedrawFlags();
+			setActorRedrawFlags(true, false);
 		}
 
 		processActors();





More information about the Scummvm-git-logs mailing list