aboutsummaryrefslogtreecommitdiff
path: root/engines/glk/blorb.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2019-07-27 19:12:39 -0700
committerPaul Gilbert2019-07-27 19:12:39 -0700
commit3457d3155e61a43ee8f2e8b1479b123439953d53 (patch)
tree99fd609db8673b4e7b80061597f9fa236c4b9efc /engines/glk/blorb.cpp
parented8fba2c53bdff36e1de0c70af1cf4d7ab27ee9c (diff)
downloadscummvm-rg350-3457d3155e61a43ee8f2e8b1479b123439953d53.tar.gz
scummvm-rg350-3457d3155e61a43ee8f2e8b1479b123439953d53.tar.bz2
scummvm-rg350-3457d3155e61a43ee8f2e8b1479b123439953d53.zip
GLK: FROTZ: Add detection for Infocom game Blorb files available at if-archive
Diffstat (limited to 'engines/glk/blorb.cpp')
-rw-r--r--engines/glk/blorb.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/engines/glk/blorb.cpp b/engines/glk/blorb.cpp
index 88d6552ffe..849e6866e0 100644
--- a/engines/glk/blorb.cpp
+++ b/engines/glk/blorb.cpp
@@ -236,7 +236,7 @@ bool Blorb::hasBlorbExt(const Common::String &filename) {
}
void Blorb::getBlorbFilenames(const Common::String &srcFilename, Common::StringArray &filenames,
- InterpreterType interpType) {
+ InterpreterType interpType, const Common::String &gameId) {
// Strip off the source filename extension
Common::String filename = srcFilename;
if (!filename.contains('.')) {
@@ -257,6 +257,7 @@ void Blorb::getBlorbFilenames(const Common::String &srcFilename, Common::StringA
break;
case INTERPRETER_FROTZ:
filenames.push_back(filename + "zblorb");
+ getInfocomBlorbFilenames(filenames, gameId);
break;
case INTERPRETER_GLULXE:
filenames.push_back(filename + "gblorb");
@@ -266,4 +267,21 @@ void Blorb::getBlorbFilenames(const Common::String &srcFilename, Common::StringA
}
}
+void Blorb::getInfocomBlorbFilenames(Common::StringArray &filenames, const Common::String &gameId) {
+ if (gameId == "beyondzork")
+ filenames.push_back("beyondzork.blb");
+ else if (gameId == "journey")
+ filenames.push_back("journey.blb");
+ else if (gameId == "lurkinghorror")
+ filenames.push_back("lurking.blb");
+ else if (gameId == "questforexcalibur")
+ filenames.push_back("arthur.blb");
+ else if (gameId == "sherlockriddle")
+ filenames.push_back("sherlock.blb");
+ else if (gameId == "shogun")
+ filenames.push_back("shogun.blb");
+ else if (gameId == "zork0")
+ filenames.push_back("zorkzero.blb");
+}
+
} // End of namespace Glk