diff options
author | metamuffin <metamuffin@disroot.org> | 2025-03-23 23:06:12 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-03-23 23:06:12 +0100 |
commit | 4a2e90eccb8b13f9350c856b66f2632f08025e96 (patch) | |
tree | 5ee4b053a987d5c7c6f131fe46015b0b6c9fbfe4 /server/src/server.rs | |
parent | 2795f974e95ff9b18f3b6e20db88d797e6e6c66c (diff) | |
download | hurrycurry-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.rs | 6 |
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(()) } |