From 21b9e6bb10ff5bb38971497b7268f7837e253ddd Mon Sep 17 00:00:00 2001 From: GIKExe <72767917+GIKExe@users.noreply.github.com> Date: Mon, 5 May 2025 03:24:15 +0300 Subject: [PATCH] add push_back to client --- src/server/player/context.rs | 4 ++++ src/server/protocol/play.rs | 18 +++++++++++------- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/server/player/context.rs b/src/server/player/context.rs index e914c80..7e1183d 100644 --- a/src/server/player/context.rs +++ b/src/server/player/context.rs @@ -268,6 +268,10 @@ impl ClientContext { } } + pub fn push_back(self: &Arc, packet: Packet){ + self.packet_buffer.lock().unwrap().push_back(packet) + } + pub fn close(self: &Arc) { self.conn.write().unwrap().close(); } diff --git a/src/server/protocol/play.rs b/src/server/protocol/play.rs index da28901..8d1dac0 100644 --- a/src/server/protocol/play.rs +++ b/src/server/protocol/play.rs @@ -209,12 +209,14 @@ pub fn send_keep_alive(client: Arc) -> Result<(), ServerError> { packet.write_long(timestamp)?; client.write_packet(&packet)?; - // let mut packet = client.read_packet(serverbound::play::KEEP_ALIVE)?; - // let timestamp2 = packet.read_long()?; - // if timestamp2 != timestamp { - // // Послать клиента нахуй - // println!("KeepAlive Error") - // } + let mut packet = client.read_packet(serverbound::play::KEEP_ALIVE)?; + let timestamp2 = packet.read_long()?; + if timestamp2 != timestamp { + // Послать клиента нахуй + println!("KeepAlive Err") + } else { + println!("KeepAlive Ok") + } Ok(()) } @@ -280,7 +282,9 @@ pub fn handle_play_state( client.set_rotation((yaw, pitch)); }, - _ => {} + _ => { + client.push_back(packet); + } } }