aboutsummaryrefslogtreecommitdiff
path: root/engines/mads/game.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mads/game.cpp')
-rw-r--r--engines/mads/game.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/engines/mads/game.cpp b/engines/mads/game.cpp
index 08a5f97a3d..0367aa690f 100644
--- a/engines/mads/game.cpp
+++ b/engines/mads/game.cpp
@@ -84,6 +84,9 @@ void Game::run() {
break;
}
+ // Get the initial starting time for the first scene
+ _scene._frameStartTime = _vm->_events->getFrameCounter();
+
if (_saveSlot == -1 && protectionResult != -1 && protectionResult != -2) {
initSection(_sectionNumber);
_statusFlag = true;
@@ -199,7 +202,7 @@ void Game::sectionLoop() {
}
_abortTimers = 0;
_abortTimersMode2 = ABORTMODE_1;
- _priorFrameTimer = _vm->_events->_currentTimer;
+ _priorFrameTimer = _scene._frameStartTime;
// Call the scene logic for entering the given scene
_scene._sceneLogic->enter();
@@ -212,7 +215,7 @@ void Game::sectionLoop() {
_player.updateFrame();
_player._visible3 = _player._visible;
_player._special = _scene.getDepthHighBits(_player._playerPos);
- _player._priorTimer = _vm->_events->_currentTimer + _player._ticksAmount;
+ _player._priorTimer = _scene._frameStartTime + _player._ticksAmount;
_player.idle();
warning("TODO: _selectedObject IF block");