diff options
author | Strangerke | 2015-01-19 20:53:53 +0100 |
---|---|---|
committer | Strangerke | 2015-01-19 20:53:53 +0100 |
commit | c810ee9a5af2bdd8e27e5b558bb6838d3521541c (patch) | |
tree | c2d082f938e7a1a026d9846665d30545136d0d80 | |
parent | 6ba81a974936d25846cd4e273393c39f206ad2f7 (diff) | |
download | scummvm-rg350-c810ee9a5af2bdd8e27e5b558bb6838d3521541c.tar.gz scummvm-rg350-c810ee9a5af2bdd8e27e5b558bb6838d3521541c.tar.bz2 scummvm-rg350-c810ee9a5af2bdd8e27e5b558bb6838d3521541c.zip |
ACCESS: MM - Make CharEntry version-dependent
-rw-r--r-- | engines/access/char.cpp | 14 | ||||
-rw-r--r-- | engines/access/char.h | 2 |
2 files changed, 10 insertions, 6 deletions
diff --git a/engines/access/char.cpp b/engines/access/char.cpp index 01b3349c84..c4fb0f2f6c 100644 --- a/engines/access/char.cpp +++ b/engines/access/char.cpp @@ -27,11 +27,15 @@ namespace Access { -CharEntry::CharEntry(const byte *data) { +CharEntry::CharEntry(const byte *data, int gameType) { Common::MemoryReadStream s(data, 999); _charFlag = s.readByte(); - _estabIndex = s.readSint16LE(); + if (gameType == GType_MartianMemorandum) + _estabIndex = -1; + else + _estabIndex = s.readSint16LE(); + _screenFile.load(s); _paletteFile.load(s); _startColor = s.readUint16LE(); @@ -73,16 +77,16 @@ CharManager::CharManager(AccessEngine *vm) : Manager(vm) { // Setup character list if (_vm->isDemo()) { for (int i = 0; i < 27; ++i) - _charTable.push_back(CharEntry(Amazon::CHARTBL_DEMO[i])); + _charTable.push_back(CharEntry(Amazon::CHARTBL_DEMO[i], vm->getGameID())); } else { for (int i = 0; i < 37; ++i) - _charTable.push_back(CharEntry(Amazon::CHARTBL[i])); + _charTable.push_back(CharEntry(Amazon::CHARTBL[i], vm->getGameID())); } break; case GType_MartianMemorandum: for (int i = 0; i < 27; ++i) - _charTable.push_back(CharEntry(Martian::CHARTBL_MM[i])); + _charTable.push_back(CharEntry(Martian::CHARTBL_MM[i], vm->getGameID())); break; default: diff --git a/engines/access/char.h b/engines/access/char.h index e89cdae49f..827d4d612a 100644 --- a/engines/access/char.h +++ b/engines/access/char.h @@ -41,7 +41,7 @@ public: FileIdent _scriptFile; Common::Array<ExtraCell> _extraCells; public: - CharEntry(const byte *data); + CharEntry(const byte *data, int gameType); CharEntry(); }; |