aboutsummaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/protocol/src/lib.rs1
-rw-r--r--server/src/vote.rs5
2 files changed, 6 insertions, 0 deletions
diff --git a/server/protocol/src/lib.rs b/server/protocol/src/lib.rs
index 903f707a..6d299497 100644
--- a/server/protocol/src/lib.rs
+++ b/server/protocol/src/lib.rs
@@ -327,6 +327,7 @@ pub enum PacketC {
initiated_by: PlayerID,
subject: VoteSubject,
message: Message,
+ timeout: f32,
},
VoteUpdated {
total: usize,
diff --git a/server/src/vote.rs b/server/src/vote.rs
index da823f3a..e9d7c118 100644
--- a/server/src/vote.rs
+++ b/server/src/vote.rs
@@ -51,6 +51,9 @@ impl VoteState {
self.cast_cooldown.remove(&player);
self.initiate_cooldown.remove(&player);
self.voting_players.remove(&player);
+ if let Some(a) = &mut self.active {
+ a.ballots.remove(&player);
+ }
self.update();
}
pub fn prime_client(&self, init: &mut Vec<PacketC>) {
@@ -59,6 +62,7 @@ impl VoteState {
initiated_by: active.initiated_by,
subject: active.subject.clone(),
message: subject_to_message(&active.subject),
+ timeout: active.timeout,
});
}
}
@@ -89,6 +93,7 @@ impl VoteState {
initiated_by: player,
message: subject_to_message(&subject),
subject,
+ timeout: 30.,
});
self.update();
}