aboutsummaryrefslogtreecommitdiff
path: root/server/src/server.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-03-23 23:06:12 +0100
committermetamuffin <metamuffin@disroot.org>2025-03-23 23:06:12 +0100
commit4a2e90eccb8b13f9350c856b66f2632f08025e96 (patch)
tree5ee4b053a987d5c7c6f131fe46015b0b6c9fbfe4 /server/src/server.rs
parent2795f974e95ff9b18f3b6e20db88d797e6e6c66c (diff)
downloadhurrycurry-4a2e90eccb8b13f9350c856b66f2632f08025e96.tar
hurrycurry-4a2e90eccb8b13f9350c856b66f2632f08025e96.tar.bz2
hurrycurry-4a2e90eccb8b13f9350c856b66f2632f08025e96.tar.zst
pause game if all players are idle, closes #120
Diffstat (limited to 'server/src/server.rs')
-rw-r--r--server/src/server.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/server/src/server.rs b/server/src/server.rs
index 3da95a43..a06f4f36 100644
--- a/server/src/server.rs
+++ b/server/src/server.rs
@@ -42,7 +42,8 @@ use tokio::sync::broadcast::Sender;
pub struct Server {
pub tx: Sender<PacketC>,
- pub connections: HashMap<ConnectionID, HashSet<PlayerID>>,
+ pub connections: HashMap<ConnectionID, (HashSet<PlayerID>, bool)>,
+ pub paused: bool,
pub game: Game,
@@ -328,9 +329,11 @@ impl Server {
.await
.context("Failed to load scoreboards")?,
editor_address: None,
+ paused: false,
})
}
}
+
impl Server {
pub fn load(
&mut self,
@@ -629,6 +632,7 @@ impl Server {
self.score_changed = true;
}
PacketS::ReplayTick { .. } => return Err(tre!("s.error.packet_not_supported")),
+ PacketS::Idle { .. } => (),
}
Ok(())
}