diff options
Diffstat (limited to 'azalea-client/src')
| -rw-r--r-- | azalea-client/src/client.rs | 3 | ||||
| -rw-r--r-- | azalea-client/src/packet_handling/configuration.rs | 2 | ||||
| -rw-r--r-- | azalea-client/src/packet_handling/game.rs | 11 |
3 files changed, 11 insertions, 5 deletions
diff --git a/azalea-client/src/client.rs b/azalea-client/src/client.rs index 7f4a6170..13d180fe 100644 --- a/azalea-client/src/client.rs +++ b/azalea-client/src/client.rs @@ -681,6 +681,9 @@ async fn run_schedule_loop( loop { // whenever we get an event from run_schedule_receiver, run the schedule run_schedule_receiver.recv().await; + // get rid of any queued events + while let Ok(()) = run_schedule_receiver.try_recv() {} + let mut ecs = ecs.lock(); ecs.run_schedule(outer_schedule_label); ecs.clear_trackers(); diff --git a/azalea-client/src/packet_handling/configuration.rs b/azalea-client/src/packet_handling/configuration.rs index e26e3f3b..b61b2e7e 100644 --- a/azalea-client/src/packet_handling/configuration.rs +++ b/azalea-client/src/packet_handling/configuration.rs @@ -54,7 +54,7 @@ pub fn send_packet_events( }; packet_events.send(PacketEvent { entity: player_entity, - packet: packet.clone(), + packet, }); } // clear the packets right after we read them diff --git a/azalea-client/src/packet_handling/game.rs b/azalea-client/src/packet_handling/game.rs index a17dd13f..8f3b0e99 100644 --- a/azalea-client/src/packet_handling/game.rs +++ b/azalea-client/src/packet_handling/game.rs @@ -163,10 +163,13 @@ pub fn send_packet_events( continue; } }; - packet_events.send(PacketEvent { - entity: player_entity, - packet: packet.clone(), - }); + if let ClientboundGamePacket::LevelChunkWithLight(_) = packet { + } else { + packet_events.send(PacketEvent { + entity: player_entity, + packet, + }); + } } // clear the packets right after we read them packets.clear(); |
