diff options
author | lolbot-iichan | 2019-05-19 23:01:09 +0300 |
---|---|---|
committer | Filippos Karapetis | 2020-01-11 18:05:39 +0200 |
commit | b3901a3d57654685f81b31e25e32d6c1cc85c86e (patch) | |
tree | 85f76d13695a0c2e5e759596d96d2f1a21b13702 /engines/wintermute/base/base_game.cpp | |
parent | 197a9542646ba30b33901b135ee14892a801694b (diff) | |
download | scummvm-rg350-b3901a3d57654685f81b31e25e32d6c1cc85c86e.tar.gz scummvm-rg350-b3901a3d57654685f81b31e25e32d6c1cc85c86e.tar.bz2 scummvm-rg350-b3901a3d57654685f81b31e25e32d6c1cc85c86e.zip |
WINTERMUTE: Add FoxTail game&engine version properties
FoxTail requires Game to have 2 string options with engine build and
game package version.
BuildVersion is provided with detection tables
GameVersion is extracted from data.dcp and stored in a hashmap
Diffstat (limited to 'engines/wintermute/base/base_game.cpp')
-rw-r--r-- | engines/wintermute/base/base_game.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp index 2d30eb9bb5..a0659cac86 100644 --- a/engines/wintermute/base/base_game.cpp +++ b/engines/wintermute/base/base_game.cpp @@ -2405,6 +2405,45 @@ ScValue *BaseGame::scGetProperty(const Common::String &name) { } return _scValue; } + + ////////////////////////////////////////////////////////////////////////// + // [FoxTail] BuildVersion (RO) + // Used to display full game version at options.script in UpdateControls() + // Returns FoxTail engine version number as a dotted string + ////////////////////////////////////////////////////////////////////////// + else if (name == "BuildVersion") { + if (BaseEngine::instance().getTargetExecutable() == FOXTAIL_1_2_227) { + _scValue->setString("1.2.227"); + } else if (BaseEngine::instance().getTargetExecutable() == FOXTAIL_1_2_230) { + _scValue->setString("1.2.230"); + } else if (BaseEngine::instance().getTargetExecutable() == FOXTAIL_1_2_304) { + _scValue->setString("1.2.304"); + } else if (BaseEngine::instance().getTargetExecutable() == FOXTAIL_1_2_362) { + _scValue->setString("1.2.362"); + } else if (BaseEngine::instance().getTargetExecutable() == FOXTAIL_1_2_527) { + _scValue->setString("1.2.527"); + } else { + _scValue->setString("UNKNOWN"); + } + return _scValue; + } + + ////////////////////////////////////////////////////////////////////////// + // [FoxTail] GameVersion (RO) + // Used to display full game version at options.script in UpdateControls() + // Returns FoxTail version number as a string + ////////////////////////////////////////////////////////////////////////// + else if (name == "GameVersion") { + uint32 gameVersion = 0; + BaseFileManager *fileManager = BaseEngine::instance().getFileManager(); + if (fileManager) { + gameVersion = fileManager->getPackageVersion("data.dcp"); + } + char tmp[16]; + sprintf(tmp,"%u",gameVersion); + _scValue->setString(tmp); + return _scValue; + } #endif ////////////////////////////////////////////////////////////////////////// |