Only clone replay every second during gameplay

This commit is contained in:
Sofia 2026-07-26 23:34:28 +03:00
parent 5b1f840e40
commit 9747681d75

View File

@ -248,6 +248,7 @@ pub struct Game {
pub replay_recorder: Option<Gd<ReplayRecorder>>,
pub current_replay_playback: Option<Gd<ReplayPlayback>>,
pub last_replay_clone: f64,
base: Base<Node>,
}
@ -336,7 +337,11 @@ impl INode for Game {
if let Some(playback) = &mut self.current_replay_playback
&& let Some(recorder) = &self.replay_recorder
{
playback.bind_mut().replay = recorder.bind().replay.clone();
self.last_replay_clone += delta;
if self.last_replay_clone >= 1. {
playback.bind_mut().replay = recorder.bind().replay.clone();
self.last_replay_clone = 0.
}
}
}
}