diff options
author | Strangerke | 2013-02-06 19:59:23 +0100 |
---|---|---|
committer | Strangerke | 2013-02-06 19:59:23 +0100 |
commit | 7d40d1e2e31d602f0db016040340cc55ff73f0b5 (patch) | |
tree | dc15c6b211cedb23b3c20c6be25dc17fce5a605a /engines/hopkins | |
parent | 880f00150c250903eb3bfb206abee0ab215d3d52 (diff) | |
download | scummvm-rg350-7d40d1e2e31d602f0db016040340cc55ff73f0b5.tar.gz scummvm-rg350-7d40d1e2e31d602f0db016040340cc55ff73f0b5.tar.bz2 scummvm-rg350-7d40d1e2e31d602f0db016040340cc55ff73f0b5.zip |
HOPKINS: Remove two labels and their associated GOTOs from EventsManager
Diffstat (limited to 'engines/hopkins')
-rw-r--r-- | engines/hopkins/events.cpp | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/engines/hopkins/events.cpp b/engines/hopkins/events.cpp index 31b972cdc3..ead8ff0a33 100644 --- a/engines/hopkins/events.cpp +++ b/engines/hopkins/events.cpp @@ -380,27 +380,34 @@ void EventsManager::VBL() { } _vm->_globals._speed = 2; + bool externalLoopFl = false; do { while (!_vm->shouldQuit()) { checkForNextFrameCounter(); + bool innerLoopFl = false; while (_breakoutFl || _vm->_globals.iRegul != 1) { checkForNextFrameCounter(); - if (!_breakoutFl) - goto LABEL_63; - if (_rateCounter > 1) - goto LABEL_65; + if (!_breakoutFl) { + innerLoopFl = true; + break; + } + if (_rateCounter > 1) { + externalLoopFl = true; + break; + } } - if (_vm->_globals._speed != 2) + if (innerLoopFl || _vm->_globals._speed != 2) break; - if (_rateCounter > 9) - goto LABEL_65; + if (externalLoopFl ||_rateCounter > 9) { + externalLoopFl = true; + break; + } } -LABEL_63: - ; + if (externalLoopFl) + break; } while (!_vm->shouldQuit() && _vm->_globals.iRegul == 3 && _rateCounter <= 15); -LABEL_65: _vm->_globals._speed = 2; _rateCounter = 0; if (!_vm->_graphicsManager._largeScreenFl || _vm->_graphicsManager._scrollStatus == 1) { |