From 0da680fed53f97f76cc47e76fb1c067e7c1ed3a1 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Sun, 8 Sep 2024 16:39:55 -0500 Subject: [PATCH] framerate-limit special node step-through --- src/game/boe.specials.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/game/boe.specials.cpp b/src/game/boe.specials.cpp index b5c41456..c2625010 100644 --- a/src/game/boe.specials.cpp +++ b/src/game/boe.specials.cpp @@ -2006,9 +2006,18 @@ void run_special(eSpecCtx which_mode, eSpecCtxType which_type, spec_num_t start_ add_string_to_buf(debug); redraw_screen(REFRESH_TRANS); sf::Event evt; + extern boost::optional replay_fps_limit; + cFramerateLimiter fps_limiter; while(true) { - if(mainPtr.pollEvent(evt) && (evt.type == sf::Event::KeyPressed || evt.type == sf::Event::MouseButtonPressed)) + if(mainPtr.pollEvent(evt) && (evt.type == sf::Event::KeyPressed || evt.type == sf::Event::MouseButtonPressed)){ break; + } + + if(replaying && replay_fps_limit.has_value()){ + replay_fps_limit->frame_finished(); + }else{ + fps_limiter.frame_finished(); + } } if(evt.type == sf::Event::KeyPressed && evt.key.code == sf::Keyboard::Escape) univ.node_step_through = false;