diff options
Diffstat (limited to 'engines/wintermute/base')
-rw-r--r-- | engines/wintermute/base/base_engine.cpp | 3 | ||||
-rw-r--r-- | engines/wintermute/base/base_engine.h | 9 |
2 files changed, 10 insertions, 2 deletions
diff --git a/engines/wintermute/base/base_engine.cpp b/engines/wintermute/base/base_engine.cpp index 7c2e9c8468..2166a3e070 100644 --- a/engines/wintermute/base/base_engine.cpp +++ b/engines/wintermute/base/base_engine.cpp @@ -61,10 +61,11 @@ BaseEngine::~BaseEngine() { delete _classReg; } -void BaseEngine::createInstance(const Common::String &targetName, const Common::String &gameId, Common::Language lang) { +void BaseEngine::createInstance(const Common::String &targetName, const Common::String &gameId, Common::Language lang, WMETargetExecutable targetExecutable) { instance()._targetName = targetName; instance()._gameId = gameId; instance()._language = lang; + instance()._targetExecutable = targetExecutable; instance().init(); } diff --git a/engines/wintermute/base/base_engine.h b/engines/wintermute/base/base_engine.h index dd82cf9c29..0f4a6b0775 100644 --- a/engines/wintermute/base/base_engine.h +++ b/engines/wintermute/base/base_engine.h @@ -34,6 +34,8 @@ #include "common/random.h" #include "common/language.h" +#include "engines/wintermute/game_description.h" + namespace Wintermute { class BaseFileManager; @@ -53,10 +55,12 @@ class BaseEngine : public Common::Singleton<Wintermute::BaseEngine> { Common::RandomSource *_rnd; SystemClassRegistry *_classReg; Common::Language _language; + WMETargetExecutable _targetExecutable; public: BaseEngine(); ~BaseEngine(); - static void createInstance(const Common::String &targetName, const Common::String &gameId, Common::Language lang); + static void createInstance(const Common::String &targetName, const Common::String &gameId, Common::Language lang, WMETargetExecutable targetExecutable = LATEST_VERSION); + void setGameRef(BaseGame *gameRef) { _gameRef = gameRef; } Common::RandomSource *getRandomSource() { return _rnd; } @@ -73,6 +77,9 @@ public: const char *getGameTargetName() const { return _targetName.c_str(); } Common::String getGameId() const { return _gameId; } Common::Language getLanguage() const { return _language; } + WMETargetExecutable getTargetExecutable() const { + return _targetExecutable; + } }; } // End of namespace Wintermute |