diff options
author | Travis Howell | 2009-02-15 13:54:53 +0000 |
---|---|---|
committer | Travis Howell | 2009-02-15 13:54:53 +0000 |
commit | 01625a01abc71fff54501d929bee5a6079bd3ee8 (patch) | |
tree | ca8d913b5c1b46778bcc956173c888dec56dd7ce | |
parent | 2ef26fcd4ac2902a83603d63671c37ef6fed0dbb (diff) | |
download | scummvm-rg350-01625a01abc71fff54501d929bee5a6079bd3ee8.tar.gz scummvm-rg350-01625a01abc71fff54501d929bee5a6079bd3ee8.tar.bz2 scummvm-rg350-01625a01abc71fff54501d929bee5a6079bd3ee8.zip |
Fix offset error in clearVideoBackGround(), that could cause menu glitches after fighting in Elvira 1.
svn-id: r38238
-rw-r--r-- | engines/agos/vga.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/engines/agos/vga.cpp b/engines/agos/vga.cpp index af876e9417..a42989e347 100644 --- a/engines/agos/vga.cpp +++ b/engines/agos/vga.cpp @@ -1120,7 +1120,7 @@ void AGOSEngine::vc34_setMouseOff() { void AGOSEngine::clearVideoBackGround(uint16 num, uint16 color) { const uint16 *vlut = &_videoWindows[num * 4]; - byte *dst = getBackGround() + vlut[0] * 16 + (vlut[1] * (vlut[2] * 16)); + byte *dst = getBackGround() + vlut[0] * 16 + vlut[1] * _dxSurfacePitch; for (uint h = 0; h < vlut[3]; h++) { memset(dst, color, vlut[2] * 16); @@ -1183,10 +1183,6 @@ void AGOSEngine::vc35_clearWindow() { uint16 num = vcReadNextWord(); uint16 color = vcReadNextWord(); - // Clear video window - clearVideoWindow(num, color); - _vgaSpriteChanged++; - // Clear video background if (getGameType() == GType_ELVIRA1) { if (num == 2 || num == 6) @@ -1199,7 +1195,10 @@ void AGOSEngine::vc35_clearWindow() { return; } + // Clear video window + clearVideoWindow(num, color); clearVideoBackGround(num, color); + _vgaSpriteChanged++; } void AGOSEngine::vc36_setWindowImage() { |