diff options
Diffstat (limited to 'server/client-lib')
-rw-r--r-- | server/client-lib/Cargo.toml | 16 | ||||
-rw-r--r-- | server/client-lib/src/lib.rs | 4 | ||||
-rw-r--r-- | server/client-lib/src/network/sync.rs | 9 | ||||
-rw-r--r-- | server/client-lib/src/network/tokio.rs | 10 |
4 files changed, 21 insertions, 18 deletions
diff --git a/server/client-lib/Cargo.toml b/server/client-lib/Cargo.toml index 95456595..5c229e2b 100644 --- a/server/client-lib/Cargo.toml +++ b/server/client-lib/Cargo.toml @@ -5,18 +5,18 @@ edition = "2021" [dependencies] hurrycurry-protocol = { path = "../protocol" } -tungstenite = { version = "0.24.0", optional = true, features = [ +tungstenite = { version = "0.26.2", optional = true, features = [ "rustls-tls-native-roots", ] } -tokio-tungstenite = { version = "0.24.0", optional = true, features = [ +tokio-tungstenite = { version = "0.26.2", optional = true, features = [ "rustls-tls-native-roots", ] } -tokio = { version = "1.40.0", features = ["net", "sync"], optional = true } -serde_json = "1.0.128" -bincode = "2.0.0-rc.3" -log = "0.4.22" -anyhow = "1.0.89" -futures-util = { version = "0.3.30", optional = true } +tokio = { version = "1.45.1", features = ["net", "sync"], optional = true } +serde_json = "1.0.140" +bincode = "2.0.1" +log = "0.4.27" +anyhow = "1.0.98" +futures-util = { version = "0.3.31", optional = true } [features] default = ["sync-network", "tokio-network"] diff --git a/server/client-lib/src/lib.rs b/server/client-lib/src/lib.rs index a40eafc1..f59b3dc3 100644 --- a/server/client-lib/src/lib.rs +++ b/server/client-lib/src/lib.rs @@ -15,7 +15,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. */ -#![feature(map_many_mut, let_chains)] +#![feature(let_chains)] pub mod network; pub mod spatial_index; @@ -234,7 +234,7 @@ impl Game { self.players_spatial_index.all(|p1, pos1| { self.players_spatial_index.query(pos1, 2., |p2, _pos2| { - if let [Some(a), Some(b)] = self.players.get_many_mut([&p1, &p2]) { + if let [Some(a), Some(b)] = self.players.get_disjoint_mut([&p1, &p2]) { a.movement.collide(&mut b.movement, dt) } }) diff --git a/server/client-lib/src/network/sync.rs b/server/client-lib/src/network/sync.rs index 02e612f4..45e84829 100644 --- a/server/client-lib/src/network/sync.rs +++ b/server/client-lib/src/network/sync.rs @@ -131,13 +131,12 @@ impl Network { for packet in self.queue_out.drain(..) { debug!("-> {packet:?}"); if self.use_bincode { - self.sock.write(Message::Binary(bincode::encode_to_vec( - &packet, - BINCODE_CONFIG, - )?))?; + self.sock.write(Message::Binary( + bincode::encode_to_vec(&packet, BINCODE_CONFIG)?.into(), + ))?; } else { self.sock - .write(Message::Text(serde_json::to_string(&packet)?))?; + .write(Message::Text(serde_json::to_string(&packet)?.into()))?; } } diff --git a/server/client-lib/src/network/tokio.rs b/server/client-lib/src/network/tokio.rs index 3f68e091..f9f34172 100644 --- a/server/client-lib/src/network/tokio.rs +++ b/server/client-lib/src/network/tokio.rs @@ -130,12 +130,16 @@ impl Network { let mut g = self.sock_send.write().await; if self.use_bincode.load(Ordering::Relaxed) { g.send(Message::Binary( - bincode::encode_to_vec(&packet, BINCODE_CONFIG).unwrap(), + bincode::encode_to_vec(&packet, BINCODE_CONFIG) + .unwrap() + .into(), )) .await?; } else { - g.send(Message::Text(serde_json::to_string(&packet).unwrap())) - .await?; + g.send(Message::Text( + serde_json::to_string(&packet).unwrap().into(), + )) + .await?; } Ok(()) } |