aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/vga_s2.cpp
diff options
context:
space:
mode:
authorTravis Howell2007-06-05 06:43:53 +0000
committerTravis Howell2007-06-05 06:43:53 +0000
commit1304f53af1ee652f6f6427eaaa707dc0c5cf5f48 (patch)
treec0f6d4965e530e7dae3ef5a01b506a40680d0dcb /engines/agos/vga_s2.cpp
parent83797aa33a595d291ee52e9f00e085631ed75556 (diff)
downloadscummvm-rg350-1304f53af1ee652f6f6427eaaa707dc0c5cf5f48.tar.gz
scummvm-rg350-1304f53af1ee652f6f6427eaaa707dc0c5cf5f48.tar.bz2
scummvm-rg350-1304f53af1ee652f6f6427eaaa707dc0c5cf5f48.zip
Add workaround for the scrolling glitch in The Feeble Files, the occurs when the repair man comes to fix the car.
svn-id: r27099
Diffstat (limited to 'engines/agos/vga_s2.cpp')
-rw-r--r--engines/agos/vga_s2.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/engines/agos/vga_s2.cpp b/engines/agos/vga_s2.cpp
index 84b86cfc7d..c915e97bf8 100644
--- a/engines/agos/vga_s2.cpp
+++ b/engines/agos/vga_s2.cpp
@@ -52,6 +52,12 @@ void AGOSEngine_Simon2::setupVideoOpcodes(VgaOpcodeProc *op) {
void AGOSEngine::vc56_delayLong() {
uint16 num = vcReadVarOrWord() * _frameCount;
+ if (getGameType() == GType_FF && _currentTable->id == 20438 && _vgaCurSpriteId == 13 && _vgaCurZoneNum == 2) {
+ // WORKAROUND: When the repair man comes to fix the car, the game doesn't
+ // wait long enough for the screen to completely scroll to the left side.
+ num *= 2;
+ }
+
addVgaEvent(num + _vgaBaseDelay, ANIMATE_EVENT, _vcPtr, _vgaCurSpriteId, _vgaCurZoneNum);
_vcPtr = (byte *)&_vc_get_out_of_code;
}