diff options
author | Paul Gilbert | 2015-07-05 19:16:54 -0400 |
---|---|---|
committer | Paul Gilbert | 2015-07-05 19:16:54 -0400 |
commit | 8570f052a39eb6ba4efe3764eb152076fbcd2f76 (patch) | |
tree | eb71d36ac795fdb5118fb1a864a7843f5edec889 /engines/sherlock/journal.cpp | |
parent | 24663029035ec9bfd228e2dada39235656ac1daa (diff) | |
download | scummvm-rg350-8570f052a39eb6ba4efe3764eb152076fbcd2f76.tar.gz scummvm-rg350-8570f052a39eb6ba4efe3764eb152076fbcd2f76.tar.bz2 scummvm-rg350-8570f052a39eb6ba4efe3764eb152076fbcd2f76.zip |
SHERLOCK: RT: Cleanup and fleshing out of saving
Diffstat (limited to 'engines/sherlock/journal.cpp')
-rw-r--r-- | engines/sherlock/journal.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/engines/sherlock/journal.cpp b/engines/sherlock/journal.cpp index 6a4347ae04..9441d6682a 100644 --- a/engines/sherlock/journal.cpp +++ b/engines/sherlock/journal.cpp @@ -683,4 +683,24 @@ void Journal::loadJournalFile(bool alreadyLoaded) { } } +void Journal::synchronize(Serializer &s) { + s.syncAsSint16LE(_index); + s.syncAsSint16LE(_sub); + s.syncAsSint16LE(_page); + s.syncAsSint16LE(_maxPage); + + int journalCount = _journal.size(); + s.syncAsUint16LE(journalCount); + if (s.isLoading()) + _journal.resize(journalCount); + + for (uint idx = 0; idx < _journal.size(); ++idx) { + JournalEntry &je = _journal[idx]; + + s.syncAsSint16LE(je._converseNum); + s.syncAsByte(je._replyOnly); + s.syncAsSint16LE(je._statementNum); + } +} + } // End of namespace Sherlock |