aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/input.cpp
diff options
context:
space:
mode:
authorTravis Howell2006-11-15 13:11:53 +0000
committerTravis Howell2006-11-15 13:11:53 +0000
commitf55320f988a481ee7d92bcce39dfcbbf31d4151a (patch)
tree6579897990f22da2f1386c501613c81df988b89b /engines/agos/input.cpp
parent7b0e6f1489878a4a45b1327f2d1733f561757c0b (diff)
downloadscummvm-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.cpp35
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() {