diff options
Diffstat (limited to 'src/client/clientenvironment.cpp')
-rw-r--r-- | src/client/clientenvironment.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/client/clientenvironment.cpp b/src/client/clientenvironment.cpp index f5e8b3601..0b6f1a325 100644 --- a/src/client/clientenvironment.cpp +++ b/src/client/clientenvironment.cpp @@ -519,7 +519,12 @@ void ClientEnvironment::getSelectedActiveObjects( } } -void ClientEnvironment::updateFrameTime() +void ClientEnvironment::updateFrameTime(bool is_paused) { - m_frame_time = porting::getTimeMs(); + // if paused, m_frame_time_pause_accumulator increases by dtime, + // otherwise, m_frame_time increases by dtime + if (is_paused) + m_frame_time_pause_accumulator = porting::getTimeMs() - m_frame_time; + else + m_frame_time = porting::getTimeMs() - m_frame_time_pause_accumulator; } |