aboutsummaryrefslogtreecommitdiff
path: root/server/src/state.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-07-20 17:31:56 +0200
committermetamuffin <metamuffin@disroot.org>2024-07-20 17:32:25 +0200
commit89ba8a6b62b90ac72547e2ca9ea5eeae7bbc6500 (patch)
tree3c55c94857e42353376c8377d3fe2632e757cb0d /server/src/state.rs
parent8290f420bee04702751ae6e4453c8b140e227e19 (diff)
downloadhurrycurry-89ba8a6b62b90ac72547e2ca9ea5eeae7bbc6500.tar
hurrycurry-89ba8a6b62b90ac72547e2ca9ea5eeae7bbc6500.tar.bz2
hurrycurry-89ba8a6b62b90ac72547e2ca9ea5eeae7bbc6500.tar.zst
syncronize player movement if the diverge
Diffstat (limited to 'server/src/state.rs')
-rw-r--r--server/src/state.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/server/src/state.rs b/server/src/state.rs
index e637b323..61795da4 100644
--- a/server/src/state.rs
+++ b/server/src/state.rs
@@ -101,6 +101,7 @@ impl State {
Ok(())
}
pub async fn packet_in(&mut self, player: PlayerID, packet: PacketS) -> Result<Vec<PacketC>> {
+ let mut replies = Vec::new();
match &packet {
PacketS::Communicate {
message: Some(Message::Text(text)),
@@ -117,7 +118,7 @@ impl State {
}
_ => (),
}
- self.game.packet_in(player, packet)?;
+ self.game.packet_in(player, packet, &mut replies)?;
if self.game.players.is_empty() && !self.game.lobby {
self.tx
.send(PacketC::ServerMessage {
@@ -127,7 +128,7 @@ impl State {
self.game
.load(self.index.generate("lobby-none".to_string()).await?, None);
}
- Ok(vec![])
+ Ok(replies)
}
async fn handle_command_parse(&mut self, player: PlayerID, command: &str) -> Result<()> {