diff --git a/engines/zvision/script_manager.cpp b/engines/zvision/script_manager.cpp index 21788874693..1a567397a8e 100644 --- a/engines/zvision/script_manager.cpp +++ b/engines/zvision/script_manager.cpp @@ -659,6 +659,10 @@ void ScriptManager::deserialize(Common::SeekableReadStream *stream) { case MKTAG('T', 'I', 'M', 'R'): { uint32 key = stream->readUint32LE(); uint32 time = stream->readUint32LE(); + if (_engine->getGameId() == GID_GRANDINQUISITOR) + time /= 100; + else if (_engine->getGameId() == GID_NEMESIS) + time /= 1000; addSideFX(new TimerNode(_engine, key, time)); } break; diff --git a/engines/zvision/timer_node.cpp b/engines/zvision/timer_node.cpp index 0d7f9b11140..a94f6db19b6 100644 --- a/engines/zvision/timer_node.cpp +++ b/engines/zvision/timer_node.cpp @@ -70,7 +70,7 @@ void TimerNode::serialize(Common::WriteStream *stream) { stream->writeUint32BE(MKTAG('T', 'I', 'M', 'R')); stream->writeUint32LE(8); // size stream->writeUint32LE(_key); - stream->writeUint32LE(_timeLeft / (_engine->getGameId() == GID_NEMESIS ? 1000 : 100)); + stream->writeUint32LE(_timeLeft); } void TimerNode::deserialize(Common::SeekableReadStream *stream) {