From 6c3bbc12c9c07e64c6719b260ce8c2371c0c27a0 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Fri, 13 Mar 2026 17:40:16 +0100 Subject: fix not updating vote state after cast cooldown --- server/src/vote.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'server/src') diff --git a/server/src/vote.rs b/server/src/vote.rs index 04c554eb..da823f3a 100644 --- a/server/src/vote.rs +++ b/server/src/vote.rs @@ -114,6 +114,7 @@ impl VoteState { } pub fn tick(&mut self, dt: f32) { + let mut need_update = false; self.initiate_cooldown.retain(|_, c| { *c -= dt; *c > 0. @@ -122,14 +123,16 @@ impl VoteState { *c -= dt; if *c <= 0. { self.voting_players.insert(*p); + need_update = true; } *c > 0. }); if let Some(v) = &mut self.active { v.timeout -= dt; - if v.timeout <= 0. { - self.update(); - } + need_update |= v.timeout <= 0. + } + if need_update { + self.update(); } } -- cgit v1.3