[Scummvm-cvs-logs] CVS: scummvm/kyra kyra.cpp,1.53,1.54 kyra.h,1.24,1.25 resource.cpp,1.20,1.21 seqplayer.cpp,1.4,1.5

Johannes Schickel lordhoto at users.sourceforge.net
Fri Oct 14 04:27:03 CEST 2005


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

Modified Files:
	kyra.cpp kyra.h resource.cpp seqplayer.cpp 
Log Message:
Oops. Fixes a bug with wrong filename for intro text in english version.
Also gets rid of GF_KYRA* since GI_KYRA* should be used instead.
And last but not least fixes text drawing while Kallaks writing scene.


Index: kyra.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/kyra.cpp,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -d -r1.53 -r1.54
--- kyra.cpp	13 Oct 2005 21:12:47 -0000	1.53
+++ kyra.cpp	14 Oct 2005 11:25:48 -0000	1.54
@@ -69,19 +69,19 @@
 };
 
 static const KyraGameSettings kyra_games[] = {
-	{ "kyra1", "Legend of Kyrandia (Floppy, English)",	GI_KYRA1, GF_ENGLISH | GF_FLOPPY  | GF_KYRA1, 
+	{ "kyra1", "Legend of Kyrandia (Floppy, English)",	GI_KYRA1, GF_ENGLISH | GF_FLOPPY, 
 										"796e44863dd22fa635b042df1bf16673", "GEMCUT.EMC" },
-	{ "kyra1", "Legend of Kyrandia (Floppy, French)",	GI_KYRA1, GF_FRENCH  | GF_FLOPPY  | GF_KYRA1,
+	{ "kyra1", "Legend of Kyrandia (Floppy, French)",	GI_KYRA1, GF_FRENCH  | GF_FLOPPY,
 										"abf8eb360e79a6c2a837751fbd4d3d24", "GEMCUT.EMC" },
-	{ "kyra1", "Legend of Kyrandia (Floppy, German)",	GI_KYRA1, GF_GERMAN  | GF_FLOPPY  | GF_KYRA1, 
+	{ "kyra1", "Legend of Kyrandia (Floppy, German)",	GI_KYRA1, GF_GERMAN  | GF_FLOPPY, 
 										"6018e1dfeaca7fe83f8d0b00eb0dd049", "GEMCUT.EMC"},
-	{ "kyra1", "Legend of Kyrandia (CD, English)",		GI_KYRA1, GF_ENGLISH | GF_TALKIE  | GF_KYRA1, 
+	{ "kyra1", "Legend of Kyrandia (CD, English)",		GI_KYRA1, GF_ENGLISH | GF_TALKIE, 
 										"fac399fe62f98671e56a005c5e94e39f", "GEMCUT.PAK" },
-	{ "kyra1", "Legend of Kyrandia (CD, German)",		GI_KYRA1, GF_GERMAN | GF_TALKIE  | GF_KYRA1, 
+	{ "kyra1", "Legend of Kyrandia (CD, German)",		GI_KYRA1, GF_GERMAN | GF_TALKIE, 
 										"230f54e6afc007ab4117159181a1c722", "GEMCUT.PAK" },
-	{ "kyra1", "Legend of Kyrandia (CD, French)",		GI_KYRA1, GF_FRENCH | GF_TALKIE  | GF_KYRA1, 
+	{ "kyra1", "Legend of Kyrandia (CD, French)",		GI_KYRA1, GF_FRENCH | GF_TALKIE, 
 										"b037c41768b652a040360ffa3556fd2a", "GEMCUT.PAK" },
-	{ "kyra1", "Legend of Kyrandia (Demo)",			GI_KYRA1, GF_DEMO | GF_KYRA1,
+	{ "kyra1", "Legend of Kyrandia (Demo)",			GI_KYRA1, GF_DEMO,
 										"fb722947d94897512b13b50cc84fd648", "DEMO1.WSA" },
 	{ 0, 0, 0, 0, 0, 0 }
 };
@@ -98,7 +98,7 @@
 };
 
 static const KyraGameList kyra_list[] = {
-	{ "kyra1", "Legend of Kyrandia", GF_KYRA1 },
+	{ "kyra1", "Legend of Kyrandia (Unknown)", 0 },
 	{ 0, 0, 0 }
 };
 
@@ -148,7 +148,7 @@
 			}
 		}
 		if (detectedGames.isEmpty()) {
-			printf("Unknown MD5 (%s)! Please report the details (language, platform, etc.) of this game to the ScummVM team\n", md5str);
+			debug("Unknown MD5 (%s)! Please report the details (language, platform, etc.) of this game to the ScummVM team\n", md5str);
 
 			const KyraGameList *g1 = kyra_list;
 			while (g1->name) {
@@ -190,7 +190,7 @@
 	// TODO
 	// Fallback. Maybe we will be able to determine game type from game
 	// data contents
-	_features = GF_KYRA1;
+	_features = 0;
 
 	for (g = kyra_games; g->name; g++) {
 		if (!Common::File::exists(g->checkFile))
@@ -217,6 +217,10 @@
 
 	if (!found) {
 		debug("Unknown MD5 (%s)! Please report the details (language, platform, etc.) of this game to the ScummVM team", md5str);
+		// a bit hacky but should work fine for now
+		debug("Assuming an english floppy version for now");
+		_features = GF_FLOPPY | GF_ENGLISH;
+		_game = GI_KYRA1;
 	}
 }
 
@@ -845,7 +849,7 @@
 		_screen->clearPage(3);
 		_screen->clearPage(0);
 		if (_features & GF_ENGLISH) {
-			loadBitmap("TEXT_ENG.CPS", 3, 3, 0);
+			loadBitmap("TEXT.CPS", 3, 3, 0);
 		} else if (_features & GF_GERMAN) {
 			loadBitmap("TEXT_GER.CPS", 3, 3, 0);
 		} else if (_features & GF_FRENCH) {

Index: kyra.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/kyra.h,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -d -r1.24 -r1.25
--- kyra.h	13 Oct 2005 21:12:47 -0000	1.24
+++ kyra.h	14 Oct 2005 11:25:48 -0000	1.25
@@ -36,14 +36,11 @@
 enum {
 	GF_FLOPPY  = 1 << 0,
 	GF_TALKIE  = 1 << 1,
-	GF_KYRA1   = 1 << 2,
-	GF_KYRA2   = 1 << 3,
-	GF_KYRA3   = 1 << 4,
-	GF_AUDIOCD = 1 << 5,  // FM-Towns versions seems to use audio CD
-	GF_DEMO    = 1 << 6,
-	GF_ENGLISH = 1 << 7,
-	GF_FRENCH  = 1 << 8,
-	GF_GERMAN  = 1 << 9
+	GF_AUDIOCD = 1 << 2,  // FM-Towns versions seems to use audio CD
+	GF_DEMO    = 1 << 3,
+	GF_ENGLISH = 1 << 4,
+	GF_FRENCH  = 1 << 5,
+	GF_GERMAN  = 1 << 6
 
 };
 

Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/resource.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- resource.cpp	13 Oct 2005 21:12:47 -0000	1.20
+++ resource.cpp	14 Oct 2005 11:25:48 -0000	1.21
@@ -188,7 +188,7 @@
 	_open = false;
 
 	if (!pakfile.open(file.c_str())) {
-		printf("pakfile couldn't open %s\n", file.c_str());
+		debug("couldn't open pakfile '%s'\n", file.c_str());
 		return;
 	}
 

Index: seqplayer.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/kyra/seqplayer.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- seqplayer.cpp	13 Oct 2005 21:12:47 -0000	1.4
+++ seqplayer.cpp	14 Oct 2005 11:25:48 -0000	1.5
@@ -601,9 +601,9 @@
 				++_seqDisplayedChar;
 				if (KyraEngine::_seq_textsTableEN[_seqDisplayedText][_seqDisplayedChar] == '\0') {
 					_seqDisplayedTextTimer = 0xFFFFFFFF;
+				} else {
+					_seqDisplayedTextTimer = _system->getMillis() + 1000 / 60;
 				}
-			} else {
-				_seqDisplayedTextTimer = _system->getMillis() + 1000 / 60;
 			}
 		}
 





More information about the Scummvm-git-logs mailing list