[Scummvm-cvs-logs] SF.net SVN: scummvm:[52336] scummvm/trunk/engines/kyra
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Tue Aug 24 15:11:12 CEST 2010
Revision: 52336
http://scummvm.svn.sourceforge.net/scummvm/?rev=52336&view=rev
Author: lordhoto
Date: 2010-08-24 13:11:12 +0000 (Tue, 24 Aug 2010)
Log Message:
-----------
KYRA: Add support for playing KYRA3 from CD.
Modified Paths:
--------------
scummvm/trunk/engines/kyra/detection.cpp
scummvm/trunk/engines/kyra/resource.cpp
Modified: scummvm/trunk/engines/kyra/detection.cpp
===================================================================
--- scummvm/trunk/engines/kyra/detection.cpp 2010-08-24 13:10:48 UTC (rev 52335)
+++ scummvm/trunk/engines/kyra/detection.cpp 2010-08-24 13:11:12 UTC (rev 52336)
@@ -43,6 +43,13 @@
#include "kyra/detection_tables.h"
+namespace {
+
+const char * const directoryGlobs[] = {
+ "malcolm",
+ 0
+};
+
const ADParams detectionParams = {
// Pointer to ADGameDescription or its superset structure
(const byte *)adGameDescs,
@@ -63,11 +70,13 @@
// Additional GUI options (for every game}
Common::GUIO_NONE,
// Maximum directory depth
- 1,
+ 2,
// List of directory globs
- 0
+ directoryGlobs
};
+} // End of anonymous namespace
+
class KyraMetaEngine : public AdvancedMetaEngine {
public:
KyraMetaEngine() : AdvancedMetaEngine(detectionParams) {}
Modified: scummvm/trunk/engines/kyra/resource.cpp
===================================================================
--- scummvm/trunk/engines/kyra/resource.cpp 2010-08-24 13:10:48 UTC (rev 52335)
+++ scummvm/trunk/engines/kyra/resource.cpp 2010-08-24 13:11:12 UTC (rev 52336)
@@ -38,6 +38,11 @@
Resource::Resource(KyraEngine_v1 *vm) : _archiveCache(), _files(), _archiveFiles(), _protectedFiles(), _loaders(), _vm(vm) {
initializeLoaders();
+ // Initialize directories for playing from CD or with original
+ // directory structure
+ if (_vm->game() == GI_KYRA3)
+ SearchMan.addSubDirectoryMatching(Common::FSNode(ConfMan.get("path")), "malcolm");
+
_files.add("global_search", &Common::SearchManager::instance(), 3, false);
// compressed installer archives are added at level '2',
// but that's done in Resource::reset not here
@@ -70,7 +75,7 @@
// List of files in the talkie version, which can never be unload.
static const char * const list[] = {
"ADL.PAK", "CHAPTER1.VRM", "COL.PAK", "FINALE.PAK", "INTRO1.PAK", "INTRO2.PAK",
- "INTRO3.PAK", "INTRO4.PAK", "MISC.PAK", "SND.PAK", "STARTUP.PAK", "XMI.PAK",
+ "INTRO3.PAK", "INTRO4.PAK", "MISC.PAK", "SND.PAK", "STARTUP.PAK", "XMI.PAK",
"CAVE.APK", "DRAGON1.APK", "DRAGON2.APK", "LAGOON.APK", 0
};
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