aboutsummaryrefslogtreecommitdiff
path: root/engines/glk/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/glk/detection.cpp')
-rw-r--r--engines/glk/detection.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/engines/glk/detection.cpp b/engines/glk/detection.cpp
index f9b06a22d8..193d439ba9 100644
--- a/engines/glk/detection.cpp
+++ b/engines/glk/detection.cpp
@@ -28,6 +28,8 @@
#include "glk/frotz/frotz.h"
#include "glk/glulxe/detection.h"
#include "glk/glulxe/glulxe.h"
+#include "glk/magnetic/detection.h"
+#include "glk/magnetic/magnetic.h"
#include "glk/scott/detection.h"
#include "glk/scott/scott.h"
#include "glk/tads/detection.h"
@@ -108,10 +110,11 @@ Common::Error GlkMetaEngine::createInstance(OSystem *syst, Engine **engine) cons
// Create the correct engine
*engine = nullptr;
if ((*engine = create<Glk::Frotz::FrotzMetaEngine, Glk::Frotz::Frotz>(syst, gameDesc)) != nullptr) {}
+ else if ((*engine = create<Glk::Glulxe::GlulxeMetaEngine, Glk::Glulxe::Glulxe>(syst, gameDesc)) != nullptr) {}
else if ((*engine = create<Glk::Scott::ScottMetaEngine, Glk::Scott::Scott>(syst, gameDesc)) != nullptr) {}
#ifndef RELEASE_BUILD
else if ((*engine = create<Glk::Alan2::Alan2MetaEngine, Glk::Alan2::Alan2>(syst, gameDesc)) != nullptr) {}
- else if ((*engine = create<Glk::Glulxe::GlulxeMetaEngine, Glk::Glulxe::Glulxe>(syst, gameDesc)) != nullptr) {}
+ else if ((*engine = create<Glk::Magnetic::MagneticMetaEngine, Glk::Magnetic::Magnetic>(syst, gameDesc)) != nullptr) {}
else if ((td = Glk::TADS::TADSMetaEngine::findGame(gameDesc._gameId.c_str()))._description) {
if (td._options & Glk::TADS::OPTION_TADS3)
*engine = new Glk::TADS::TADS3::TADS3(syst, gameDesc);
@@ -151,10 +154,11 @@ Common::String GlkMetaEngine::findFileByGameId(const Common::String &gameId) con
PlainGameList GlkMetaEngine::getSupportedGames() const {
PlainGameList list;
Glk::Frotz::FrotzMetaEngine::getSupportedGames(list);
+ Glk::Glulxe::GlulxeMetaEngine::getSupportedGames(list);
Glk::Scott::ScottMetaEngine::getSupportedGames(list);
#ifndef RELEASE_BUILD
Glk::Alan2::Alan2MetaEngine::getSupportedGames(list);
- Glk::Glulxe::GlulxeMetaEngine::getSupportedGames(list);
+ Glk::Magnetic::MagneticMetaEngine::getSupportedGames(list);
Glk::TADS::TADSMetaEngine::getSupportedGames(list);
#endif
@@ -165,6 +169,9 @@ PlainGameDescriptor GlkMetaEngine::findGame(const char *gameId) const {
Glk::GameDescriptor gd = Glk::Frotz::FrotzMetaEngine::findGame(gameId);
if (gd._description) return gd;
+ gd = Glk::Glulxe::GlulxeMetaEngine::findGame(gameId);
+ if (gd._description) return gd;
+
gd = Glk::Scott::ScottMetaEngine::findGame(gameId);
if (gd._description) return gd;
@@ -172,7 +179,7 @@ PlainGameDescriptor GlkMetaEngine::findGame(const char *gameId) const {
gd = Glk::Alan2::Alan2MetaEngine::findGame(gameId);
if (gd._description) return gd;
- gd = Glk::Glulxe::GlulxeMetaEngine::findGame(gameId);
+ gd = Glk::Magnetic::MagneticMetaEngine::findGame(gameId);
if (gd._description) return gd;
gd = Glk::TADS::TADSMetaEngine::findGame(gameId);
@@ -187,11 +194,12 @@ DetectedGames GlkMetaEngine::detectGames(const Common::FSList &fslist) const {
DetectedGames detectedGames;
Glk::Frotz::FrotzMetaEngine::detectGames(fslist, detectedGames);
+ Glk::Glulxe::GlulxeMetaEngine::detectGames(fslist, detectedGames);
Glk::Scott::ScottMetaEngine::detectGames(fslist, detectedGames);
#ifndef RELEASE_BUILD
Glk::Alan2::Alan2MetaEngine::detectGames(fslist, detectedGames);
- Glk::Glulxe::GlulxeMetaEngine::detectGames(fslist, detectedGames);
+ Glk::Magnetic::MagneticMetaEngine::detectGames(fslist, detectedGames);
Glk::TADS::TADSMetaEngine::detectGames(fslist, detectedGames);
#endif
@@ -201,11 +209,12 @@ DetectedGames GlkMetaEngine::detectGames(const Common::FSList &fslist) const {
void GlkMetaEngine::detectClashes() const {
Common::StringMap map;
Glk::Frotz::FrotzMetaEngine::detectClashes(map);
+ Glk::Glulxe::GlulxeMetaEngine::detectClashes(map);
Glk::Scott::ScottMetaEngine::detectClashes(map);
#ifndef RELEASE_BUILD
Glk::Alan2::Alan2MetaEngine::detectClashes(map);
- Glk::Glulxe::GlulxeMetaEngine::detectClashes(map);
+ Glk::Magnetic::MagneticMetaEngine::detectClashes(map);
Glk::TADS::TADSMetaEngine::detectClashes(map);
#endif
}