diff options
| author | D G Turner | 2013-12-10 02:04:25 +0000 | 
|---|---|---|
| committer | D G Turner | 2013-12-10 02:04:25 +0000 | 
| commit | 6db7b81d5c8270fda6d65e71401ef571367617dd (patch) | |
| tree | 641698f6cd054eeb187f993f9ec8c7122d447ef0 | |
| parent | 5dca63221da0a9de079ee948598ff67dacffbf5d (diff) | |
| download | scummvm-rg350-6db7b81d5c8270fda6d65e71401ef571367617dd.tar.gz scummvm-rg350-6db7b81d5c8270fda6d65e71401ef571367617dd.tar.bz2 scummvm-rg350-6db7b81d5c8270fda6d65e71401ef571367617dd.zip | |
QUEEN: Restore previous detection code as fallback detector.
| -rw-r--r-- | engines/queen/detection.cpp | 35 | 
1 files changed, 19 insertions, 16 deletions
| diff --git a/engines/queen/detection.cpp b/engines/queen/detection.cpp index f8cecf9eaa..e56efd5e17 100644 --- a/engines/queen/detection.cpp +++ b/engines/queen/detection.cpp @@ -372,7 +372,7 @@ public:  	virtual int getMaximumSaveSlot() const { return 99; }  	virtual void removeSaveState(const char *target, int slot) const; -	//const ADGameDescription *fallbackDetect(const FileMap &allFiles, const Common::FSList &fslist) const; +	const ADGameDescription *fallbackDetect(const FileMap &allFiles, const Common::FSList &fslist) const;  };  bool QueenMetaEngine::hasFeature(MetaEngineFeature f) const { @@ -401,9 +401,8 @@ const ExtraGuiOptions QueenMetaEngine::getExtraGuiOptions(const Common::String &  	return options;  } -/* FIXME - Migrate this code (Use as falllback): -GameList QueenMetaEngine::detectGames(const Common::FSList &fslist) const { -	GameList detectedGames; +const ADGameDescription *QueenMetaEngine::fallbackDetect(const FileMap &allFiles, const Common::FSList &fslist) const { +	static ADGameDescription desc;  	// Iterate over all files in the given directory  	for (Common::FSList::const_iterator file = fslist.begin(); file != fslist.end(); ++file) { @@ -417,27 +416,31 @@ GameList QueenMetaEngine::detectGames(const Common::FSList &fslist) const {  			}  			Queen::DetectedGameVersion version;  			if (Queen::Resource::detectVersion(&version, &dataFile)) { -				GameDescriptor dg(queenGameDescriptor.gameid, queenGameDescriptor.description, version.language, version.platform); +				desc.gameid = "queen"; +				desc.language = version.language; +				desc.platform = version.platform; +				desc.flags = ADGF_NO_FLAGS; +				desc.guioptions = GUIO0();  				if (version.features & Queen::GF_DEMO) { -					dg.updateDesc("Demo"); -					dg.setGUIOptions(GUIO_NOSPEECH); +					desc.extra = "Demo"; +					desc.flags = ADGF_DEMO; +					desc.guioptions = GUIO_NOSPEECH;  				} else if (version.features & Queen::GF_INTERVIEW) { -					dg.updateDesc("Interview"); -					dg.setGUIOptions(GUIO_NOSPEECH); +					desc.extra = "Interview"; +					desc.flags = ADGF_DEMO; +					desc.guioptions = GUIO_NOSPEECH;  				} else if (version.features & Queen::GF_FLOPPY) { -					dg.updateDesc("Floppy"); -					dg.setGUIOptions(GUIO_NOSPEECH); +					desc.extra = "Floppy"; +					desc.guioptions = GUIO_NOSPEECH;  				} else if (version.features & Queen::GF_TALKIE) { -					dg.updateDesc("Talkie"); +					desc.extra = "Talkie";  				} -				detectedGames.push_back(dg); -				break; +				return (const ADGameDescription *)&desc;  			}  		}  	} -	return detectedGames; +	return 0;  } -*/  SaveStateList QueenMetaEngine::listSaves(const char *target) const {  	Common::SaveFileManager *saveFileMan = g_system->getSavefileManager(); | 
