diff options
Diffstat (limited to 'server/src')
| -rw-r--r-- | server/src/vote.rs | 9 |
1 files changed, 6 insertions, 3 deletions
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(); } } |