From 7d40d1e2e31d602f0db016040340cc55ff73f0b5 Mon Sep 17 00:00:00 2001 From: Strangerke Date: Wed, 6 Feb 2013 19:59:23 +0100 Subject: HOPKINS: Remove two labels and their associated GOTOs from EventsManager --- engines/hopkins/events.cpp | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'engines') 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) { -- cgit v1.2.3