diff options
author | Martin Kiewitz | 2016-02-03 01:32:57 +0100 |
---|---|---|
committer | Martin Kiewitz | 2016-02-03 01:32:57 +0100 |
commit | 8271058a4598e25096fe305f2c0beb7d2613e178 (patch) | |
tree | 15d09329fae16381d7d360e7a3981998771f34a7 /engines/agi/cycle.cpp | |
parent | 9fecbe58a1f99edc0dc067564e4fd53730faa933 (diff) | |
download | scummvm-rg350-8271058a4598e25096fe305f2c0beb7d2613e178.tar.gz scummvm-rg350-8271058a4598e25096fe305f2c0beb7d2613e178.tar.bz2 scummvm-rg350-8271058a4598e25096fe305f2c0beb7d2613e178.zip |
AGI: Implement messageBox() as inner loop
Also remove _game.keypress, _game.msgBoxTicks
Diffstat (limited to 'engines/agi/cycle.cpp')
-rw-r--r-- | engines/agi/cycle.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/engines/agi/cycle.cpp b/engines/agi/cycle.cpp index c9f109b8b3..29c97babbc 100644 --- a/engines/agi/cycle.cpp +++ b/engines/agi/cycle.cpp @@ -237,8 +237,6 @@ int AgiEngine::mainCycle(bool onlyCheckForEvents) { } else { // inner loop active // call specific workers - _game.keypress = 0; - switch (_game.cycleInnerLoopType) { case CYCLE_INNERLOOP_GETSTRING: // loop called from TextMgr::stringEdit() case CYCLE_INNERLOOP_GETNUMBER: @@ -269,6 +267,12 @@ int AgiEngine::mainCycle(bool onlyCheckForEvents) { } break; + case CYCLE_INNERLOOP_MESSAGEBOX: + if (key) { + _text->messageBox_CharPress(key); + } + break; + default: break; } @@ -278,9 +282,6 @@ int AgiEngine::mainCycle(bool onlyCheckForEvents) { if (_menu->delayedExecuteActive()) { _menu->execute(); } - - if (_game.msgBoxTicks > 0) - _game.msgBoxTicks--; } _gfx->updateScreen(); @@ -347,7 +348,7 @@ int AgiEngine::playGame() { inGameTimerUpdate(); if (_passedPlayTimeCycles >= getVar(VM_VAR_TIME_DELAY)) { - _passedPlayTimeCycles = 0; + inGameTimerResetPassedCycles(); interpretCycle(); |