[Scummvm-cvs-logs] CVS: scummvm/scumm gfx.cpp,2.116,2.117 script_v5.cpp,1.101,1.102

Max Horn fingolfin at users.sourceforge.net
Sat May 24 09:12:05 CEST 2003


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

Modified Files:
	gfx.cpp script_v5.cpp 
Log Message:
cleanup / minor tweak

Index: gfx.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/gfx.cpp,v
retrieving revision 2.116
retrieving revision 2.117
diff -u -d -r2.116 -r2.117
--- gfx.cpp	23 May 2003 13:24:40 -0000	2.116
+++ gfx.cpp	24 May 2003 16:11:47 -0000	2.117
@@ -2355,7 +2355,9 @@
 #pragma mark -
 
 void Scumm::fadeIn(int effect) {
+
 	updatePalette();
+
 	switch (effect) {
 	case 1:
 	case 2:
@@ -2389,48 +2391,48 @@
 void Scumm::fadeOut(int effect) {
 	VirtScreen *vs;
 
-	updatePalette();
-
 	setDirtyRange(0, 0, 0);
 	if (!(_features & GF_AFTER_V7))
 		camera._last.x = camera._cur.x;
 
-	if (!_screenEffectFlag)
-		return;
-	_screenEffectFlag = false;
-
-	if (effect == 0)
-		return;
+	if (_screenEffectFlag && effect != 0) {
+	
+		// Fill screen 0 with black
+		vs = &virtscr[0];
+		memset(vs->screenPtr + vs->xstart, 0, vs->size);
+	
+		// Fade to black with the specified effect, if any.
+		switch (effect) {
+		case 1:
+		case 2:
+		case 3:
+		case 4:
+			transitionEffect(effect - 1);
+			break;
+		case 128:
+			unkScreenEffect6();
+			break;
+		case 129:
+			// Just blit screen 0 to the display (i.e. display will be black)
+			setDirtyRange(0, 0, vs->height);
+			updateDirtyScreen(0);
+			break;
+		case 134:
+			dissolveEffect(1, 1);
+			break;
+		case 135:
+			unkScreenEffect5(1);
+			break;
+		default:
+			warning("fadeOut: default case %d", effect);
+		}
+	}
 
-	// Fill screen 0 with black
-	vs = &virtscr[0];
-	memset(vs->screenPtr + vs->xstart, 0, vs->size);
+	// Update the palette at the end (once we faded to black) to avoid
+	// some nasty effects when the palette is changed
+	updatePalette();
 
-	// Fade to black with the specified effect, if any.
-	switch (effect) {
-	case 1:
-	case 2:
-	case 3:
-	case 4:
-		transitionEffect(effect - 1);
-		break;
-	case 128:
-		unkScreenEffect6();
-		break;
-	case 129:
-		// Just blit screen 0 to the display (i.e. display will be black)
-		setDirtyRange(0, 0, vs->height);
-		updateDirtyScreen(0);
-		break;
-	case 134:
-		dissolveEffect(1, 1);
-		break;
-	case 135:
-		unkScreenEffect5(1);
-		break;
-	default:
-		warning("fadeOut: default case %d", effect);
-	}
+	_screenEffectFlag = false;
 }
 
 /* Transition effect. There are four different effects possible,

Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.101
retrieving revision 1.102
diff -u -d -r1.101 -r1.102
--- script_v5.cpp	23 May 2003 13:24:40 -0000	1.101
+++ script_v5.cpp	24 May 2003 16:11:47 -0000	1.102
@@ -731,11 +731,11 @@
 }
 
 void Scumm_v5::o5_doSentence() {
-	int a;
+	int verb;
 	SentenceTab *st;
 
-	a = getVarOrDirectByte(0x80);
-	if (a == 0xFE) {
+	verb = getVarOrDirectByte(0x80);
+	if (verb == 0xFE) {
 		_sentenceNum = 0;
 		stopScript(VAR(VAR_SENTENCE_SCRIPT));
 		clearClickedStatus();
@@ -744,7 +744,7 @@
 
 	st = &_sentence[_sentenceNum++];
 
-	st->verb = a;
+	st->verb = verb;
 	st->objectA = getVarOrDirectWord(0x40);
 	st->objectB = getVarOrDirectWord(0x20);
 	st->preposition = (st->objectB != 0);





More information about the Scummvm-git-logs mailing list