diff options
| author | Crystalwarrior <Varsash@Gmail.com> | 2021-03-21 05:12:44 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-20 21:12:44 -0500 |
| commit | 510c0f4b17f24eb534d22654a41e9157c89a8211 (patch) | |
| tree | 079a0e3f799ed55ac80370b289b0ba9496eeb7c0 /src/demoserver.cpp | |
| parent | e3ba27c47e4846e1a93057d83464ecff027da7be (diff) | |
Add timer packets to demo playback (#494)
When the demo skips by some number of seconds, the timer will also skip forward by that duration.
Co-authored-by: in1tiate <32779090+in1tiate@users.noreply.github.com>
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
Diffstat (limited to 'src/demoserver.cpp')
| -rw-r--r-- | src/demoserver.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/demoserver.cpp b/src/demoserver.cpp index 75664659..88dfdb4b 100644 --- a/src/demoserver.cpp +++ b/src/demoserver.cpp @@ -259,8 +259,11 @@ void DemoServer::playback() AOPacket wait_packet = AOPacket(current_packet); int duration = wait_packet.get_contents().at(0).toInt(); - if (max_wait != -1 && duration + elapsed_time > max_wait) + if (max_wait != -1 && duration + elapsed_time > max_wait) { duration = qMax(0, max_wait - elapsed_time); + // Skip the difference on the timers + emit skip_timers(wait_packet.get_contents().at(0).toInt() - duration); + } elapsed_time += duration; timer->start(duration); } |
