diff options
author | Paul Gilbert | 2014-03-04 20:06:48 -0500 |
---|---|---|
committer | Paul Gilbert | 2014-03-04 20:06:48 -0500 |
commit | 1607a9104700e987cacfec41aaafd25d979aeb98 (patch) | |
tree | 06d7b94d3599c58c4cfb5f2c604b6bddb0acc2ee /engines/mads/events.cpp | |
parent | f6888eef1069ac5df07c3f4dcc3a30755bc4ebb0 (diff) | |
download | scummvm-rg350-1607a9104700e987cacfec41aaafd25d979aeb98.tar.gz scummvm-rg350-1607a9104700e987cacfec41aaafd25d979aeb98.tar.bz2 scummvm-rg350-1607a9104700e987cacfec41aaafd25d979aeb98.zip |
MADS: Finished remainder of Scene::doFrame
Diffstat (limited to 'engines/mads/events.cpp')
-rw-r--r-- | engines/mads/events.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/mads/events.cpp b/engines/mads/events.cpp index 0c2e2f2aea..1acb081d8a 100644 --- a/engines/mads/events.cpp +++ b/engines/mads/events.cpp @@ -35,7 +35,8 @@ namespace MADS { EventsManager::EventsManager(MADSEngine *vm) { _vm = vm; _cursorSprites = nullptr; - _gameCounter = 0; + _frameCounter = 0; + _frameNumber = 0; _priorFrameTime = 0; _keyPressed = false; _mouseClicked = false; @@ -140,7 +141,7 @@ void EventsManager::checkForNextFrameCounter() { // Check for next game frame uint32 milli = g_system->getMillis(); if ((milli - _priorFrameTime) >= GAME_FRAME_TIME) { - ++_gameCounter; + ++_frameCounter; _priorFrameTime = milli; // Give time to the debugger @@ -165,6 +166,12 @@ void EventsManager::delay(int cycles) { } } +void EventsManager::waitForNextFrame() { + uint32 frameNum = getFrameCounter(); + while (!_vm->shouldQuit() && !_vm->_game->_abortTimers && frameNum == _frameNumber) + delay(1); +} + void EventsManager::initVars() { _mousePos = Common::Point(-1, -1); _vD4 = _vCC; |