[Scummvm-cvs-logs] SF.net SVN: scummvm:[50911] scummvm/trunk/engines/sci

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Thu Jul 15 08:04:53 CEST 2010


Revision: 50911
          http://scummvm.svn.sourceforge.net/scummvm/?rev=50911&view=rev
Author:   m_kiewitz
Date:     2010-07-15 06:04:52 +0000 (Thu, 15 Jul 2010)

Log Message:
-----------
SCI: adding support to qfg4 to import qfg3 character data

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/kfile.cpp
    scummvm/trunk/engines/sci/sci.cpp

Modified: scummvm/trunk/engines/sci/engine/kfile.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kfile.cpp	2010-07-15 05:25:19 UTC (rev 50910)
+++ scummvm/trunk/engines/sci/engine/kfile.cpp	2010-07-15 06:04:52 UTC (rev 50911)
@@ -844,13 +844,15 @@
 	int attr = argv[2].toUint16(); // We won't use this, Win32 might, though...
 	debugC(2, kDebugLevelFile, "kFileIO(findFirst): %s, 0x%x", mask.c_str(), attr);
 
+	// QfG3 uses "/\*.*" for the character import, QfG4 uses "/\*"
+	if (mask.hasPrefix("/\\")) {
+		mask.deleteChar(0);
+		mask.deleteChar(0);
+	}
+
 	// We remove ".*". mask will get prefixed, so we will return all additional files for that gameid
 	if (mask == "*.*")
 		mask = "*";
-
-	// QfG3 uses this mask for the character import
-	if (mask == "/\\*.*")
-		mask = "*";
 	return s->_dirseeker.firstFile(mask, buf, s->_segMan);
 }
 

Modified: scummvm/trunk/engines/sci/sci.cpp
===================================================================
--- scummvm/trunk/engines/sci/sci.cpp	2010-07-15 05:25:19 UTC (rev 50910)
+++ scummvm/trunk/engines/sci/sci.cpp	2010-07-15 06:04:52 UTC (rev 50911)
@@ -497,8 +497,11 @@
 		// Quest for Glory 3 wants to read files from Quest for Glory 2 to import character data
 		if (_gamestate->currentRoomNumber() == 54)
 			return "qfg2";
+	} else if (_gameId == GID_QFG4) {
+		// Quest for Glory 4 wants to read files from Quest for Glory 3 to import character data
+		if (_gamestate->currentRoomNumber() == 54)
+			return "qfg3";
 	}
-	// TODO: Implement the same for qfg4, when sci32 is good enough
 	return _targetName;
 }
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list