diff options
author | Travis Howell | 2006-11-15 13:11:53 +0000 |
---|---|---|
committer | Travis Howell | 2006-11-15 13:11:53 +0000 |
commit | f55320f988a481ee7d92bcce39dfcbbf31d4151a (patch) | |
tree | 6579897990f22da2f1386c501613c81df988b89b /engines/agos/input.cpp | |
parent | 7b0e6f1489878a4a45b1327f2d1733f561757c0b (diff) | |
download | scummvm-rg350-f55320f988a481ee7d92bcce39dfcbbf31d4151a.tar.gz scummvm-rg350-f55320f988a481ee7d92bcce39dfcbbf31d4151a.tar.bz2 scummvm-rg350-f55320f988a481ee7d92bcce39dfcbbf31d4151a.zip |
Add inital pause code for Elvira 1/2 & WW, and cleanup
svn-id: r24723
Diffstat (limited to 'engines/agos/input.cpp')
-rw-r--r-- | engines/agos/input.cpp | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/engines/agos/input.cpp b/engines/agos/input.cpp index 6729cf7da0..d08064e14b 100644 --- a/engines/agos/input.cpp +++ b/engines/agos/input.cpp @@ -426,16 +426,35 @@ void AGOSEngine::hitarea_stuff_helper_2() { } void AGOSEngine::permitInput() { - if (!_mortalFlag) { - _mortalFlag = true; - justifyOutPut(0); - _curWindow = 0; - if (_windowArray[0] != 0) { - _textWindow = _windowArray[0]; - justifyStart(); + if (!_mortalFlag) + return; + + + _mortalFlag = true; + justifyOutPut(0); + + if (getGameType() == GType_ELVIRA1 || getGameType() == GType_ELVIRA2 || getGameType() == GType_WW) { + int n = 0; + while (n < 8) { + if ((_fcsData1[n]) && (_windowArray[n]) && (_windowArray[n]->flags & 128)) { + _textWindow = _windowArray[n]; + waitWindow(_textWindow); + clsCheck(_textWindow); + } + _fcsData1[n]=0; + n++; } - _mortalFlag = false; + + restartAnimation(); + } + + _curWindow = 0; + if (_windowArray[0] != 0) { + _textWindow = _windowArray[0]; + justifyStart(); } + _mortalFlag = false; + } bool AGOSEngine::processSpecialKeys() { |