diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/simon/saveload.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/simon/saveload.cpp b/engines/simon/saveload.cpp index 374dbab6b6..b2224ab739 100644 --- a/engines/simon/saveload.cpp +++ b/engines/simon/saveload.cpp @@ -481,6 +481,7 @@ bool SimonEngine::saveGame(uint slot, char *caption) { Common::OutSaveFile *f; uint item_index, num_item, i, j; TimeEvent *te; + uint32 gsc = _gameStoppedClock; _lockWord |= 0x100; @@ -506,8 +507,10 @@ bool SimonEngine::saveGame(uint slot, char *caption) { i++; f->writeUint32BE(i); + if (_clockStopped) + gsc += ((uint32)time(NULL) - _clockStopped); for (te = _firstTimeStruct; te; te = te->next) { - f->writeUint32BE(te->time + _gameStoppedClock); + f->writeUint32BE(te->time + gsc); f->writeUint16BE(te->subroutine_id); } |