diff options
-rw-r--r-- | engines/drascula/animation.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/engines/drascula/animation.cpp b/engines/drascula/animation.cpp index 43799f7944..969d06f2ef 100644 --- a/engines/drascula/animation.cpp +++ b/engines/drascula/animation.cpp @@ -798,17 +798,22 @@ void DrasculaEngine::animation_16_2() { return; } - delay(3000); + uint32 now = _system->getMillis(); + while (_system->getMillis() - now < 3000 * 2) { + delay(50); + if (getScan() != 0) { + asco(); + return; + } + } if (i < 4) { fadeToBlack(1); - + clearRoom(); if (getScan() != 0) { asco(); return; } - - clearRoom(); } } @@ -818,6 +823,7 @@ void DrasculaEngine::animation_16_2() { for (int l = 1; l < 200; l++) { copyBackground(0, 0, 0, l, 320, 200 - l, drawSurface3, screenSurface); copyBackground(0, 200 - l, 0, 0, 320, l, bgSurface, screenSurface); + delay(10); updateScreen(); if (getScan() != 0) { asco(); |