diff options
Diffstat (limited to 'engines/gob/inter.cpp')
-rw-r--r-- | engines/gob/inter.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/gob/inter.cpp b/engines/gob/inter.cpp index 0d48ad719c..f6e6d41100 100644 --- a/engines/gob/inter.cpp +++ b/engines/gob/inter.cpp @@ -288,7 +288,21 @@ void Inter::funcBlock(int16 retFlag) { _vm->_util->longDelay(5000); } + } // End of workaround + // WORKAROUND: + // Apart the CD version which is playing a speech in this room, all the versions + // of Fascination have a too short delay between the storage room and the lab. + // We manually add it here. + if ((_vm->getGameType() == kGameTypeFascination) && + !strncmp(_vm->_game->_curTotFile, "PLANQUE.tot", 9)) { + int addr = _vm->_game->_script->pos(); + if ((startaddr == 0x0202 && addr == 0x0330) || // Before Lab, Amiga & Atari, English + (startaddr == 0x023D && addr == 0x032D) || // Before Lab, PC floppy, German + (startaddr == 0x02C2 && addr == 0x03C2)) { // Before Lab, PC floppy, Hebrew + warning("Fascination - Adding delay"); + _vm->_util->longDelay(3000); + } } // End of workaround cmd = _vm->_game->_script->readByte(); |