[Scummvm-cvs-logs] CVS: scummvm/bs2/driver d_draw.cpp,1.14,1.15

Torbj?rn Andersson eriktorbjorn at users.sourceforge.net
Tue Sep 9 08:25:51 CEST 2003


Update of /cvsroot/scummvm/scummvm/bs2/driver
In directory sc8-pr-cvs1:/tmp/cvs-serv30909/driver

Modified Files:
	d_draw.cpp 
Log Message:
Reworked the last commit a bit, so that PlaySmacker() doesn't need to know
as much about the text handling functions.


Index: d_draw.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/driver/d_draw.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- d_draw.cpp	9 Sep 2003 15:10:07 -0000	1.14
+++ d_draw.cpp	9 Sep 2003 15:17:12 -0000	1.15
@@ -403,16 +403,20 @@
 uint8 *textSurface = NULL;
 
 void OpenTextObject(_movieTextObject *obj) {
-	CreateSurface(obj->textSprite, &textSurface);
+	if (obj->textSprite)
+		CreateSurface(obj->textSprite, &textSurface);
 }
 
 void CloseTextObject(_movieTextObject *obj) {
-	DeleteSurface(textSurface);
-	textSurface = 0;
+	if (textSurface) {
+		DeleteSurface(textSurface);
+		textSurface = 0;
+	}
 }
 
 void DrawTextObject(_movieTextObject *obj) {
-	DrawSurface(obj->textSprite, textSurface);
+	if (obj->textSprite && textSurface)
+		DrawSurface(obj->textSprite, textSurface);
 	
 /*
 	HRESULT				hr;
@@ -573,17 +577,14 @@
 
 			if (frameCounter == text[textCounter]->startFrame) {
 				EraseBackBuffer();
-				if (text[textCounter]->textSprite) {
-					OpenTextObject(text[textCounter]);
-					DrawTextObject(text[textCounter]);
-				}
+				OpenTextObject(text[textCounter]);
+				DrawTextObject(text[textCounter]);
 				if (text[textCounter]->speech)
 					debug(0, "FIXME: Play subtitle speech");
 			}
 
 			if (frameCounter == text[textCounter]->endFrame) {
-				if (text[textCounter]->textSprite)
-					CloseTextObject(text[textCounter]);
+				CloseTextObject(text[textCounter]);
 				EraseBackBuffer();
 				textCounter++;
 			}
@@ -607,8 +608,7 @@
 
 		BS2_SetPalette(0, 256, oldPal, RDPAL_INSTANT);
 
-		if (textSurface)
-			CloseTextObject(text[textCounter]);
+		CloseTextObject(text[textCounter]);
 	}
 
 	return(RD_OK);





More information about the Scummvm-git-logs mailing list