diff options
Diffstat (limited to 'engines/gob/script.cpp')
-rw-r--r-- | engines/gob/script.cpp | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/engines/gob/script.cpp b/engines/gob/script.cpp index abcc4511b3..61876d7a4a 100644 --- a/engines/gob/script.cpp +++ b/engines/gob/script.cpp @@ -376,7 +376,10 @@ bool Script::loadTOT(const Common::String &fileName) { } } - return (_totData != 0); + if (_totData == 0) + return false; + + return getTOTProperties(); } bool Script::loadLOM(const Common::String &fileName) { @@ -400,6 +403,17 @@ bool Script::loadLOM(const Common::String &fileName) { return true; } +bool Script::getTOTProperties() { + // Offset 39-41: Version in "Major.Minor" string form + if (_totData[40] != '.') + return false; + + _versionMajor = _totData[39] - '0'; + _versionMinor = _totData[41] - '0'; + + return true; +} + void Script::unload() { unloadTOT(); } @@ -473,4 +487,12 @@ void Script::call(uint32 offset) { seek(offset); } +uint8 Script::getVersionMajor() const { + return _versionMajor; +} + +uint8 Script::getVersionMinor() const { + return _versionMinor; +} + } // End of namespace Gob |