From 7b3e2e4bf793466a351510c7fbbd08234e93bb0e Mon Sep 17 00:00:00 2001 From: mat <27899617+mat-1@users.noreply.github.com> Date: Thu, 21 Sep 2023 11:16:29 -0500 Subject: 1.20.2 (#99) * add configuration state * start updating to 23w31a * implement a bit more of 23w31a * chunk batching * start adding configuration state * ioasfhjgsd * almost works * configuration state mostly implemented * handle other packets in configuration state and fix keepalive * cleanup, fix warnings * 23w32a * fix some doctests * 23w33a * 23w35a * 1.20.2-pre2 * fix system conflicts * 1.20.2-pre4 * make tests compile * tests pass * 1.20.2-rc2 * 1.20.2 * Revert "1.20.2" This reverts commit dd152fd265332ead333c919e585ded6d609d7468. * didn't mean to commit that code --------- Co-authored-by: mat --- azalea-client/src/disconnect.rs | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'azalea-client/src/disconnect.rs') diff --git a/azalea-client/src/disconnect.rs b/azalea-client/src/disconnect.rs index 10aef7ba..966e5bb7 100644 --- a/azalea-client/src/disconnect.rs +++ b/azalea-client/src/disconnect.rs @@ -12,7 +12,7 @@ use bevy_ecs::{ }; use derive_more::Deref; -use crate::{client::JoinedClientBundle, LocalPlayer}; +use crate::{client::JoinedClientBundle, raw_connection::RawConnection}; pub struct DisconnectPlugin; impl Plugin for DisconnectPlugin { @@ -21,7 +21,7 @@ impl Plugin for DisconnectPlugin { PostUpdate, ( update_read_packets_task_running_component, - disconnect_on_read_packets_ended, + disconnect_on_connection_dead, remove_components_from_disconnected_players, ) .chain(), @@ -47,25 +47,23 @@ pub fn remove_components_from_disconnected_players( } #[derive(Component, Clone, Copy, Debug, Deref)] -pub struct ReadPacketsTaskRunning(bool); +pub struct IsConnectionAlive(bool); fn update_read_packets_task_running_component( + query: Query<(Entity, &RawConnection)>, mut commands: Commands, - local_player: Query<(Entity, &LocalPlayer)>, ) { - for (entity, local_player) in &local_player { - let running = !local_player.read_packets_task.is_finished(); - commands - .entity(entity) - .insert(ReadPacketsTaskRunning(running)); + for (entity, raw_connection) in &query { + let running = raw_connection.is_alive(); + commands.entity(entity).insert(IsConnectionAlive(running)); } } -fn disconnect_on_read_packets_ended( - local_player: Query<(Entity, &ReadPacketsTaskRunning), Changed>, +fn disconnect_on_connection_dead( + query: Query<(Entity, &IsConnectionAlive), Changed>, mut disconnect_events: EventWriter, ) { - for (entity, &read_packets_task_running) in &local_player { - if !*read_packets_task_running { + for (entity, &is_connection_alive) in &query { + if !*is_connection_alive { disconnect_events.send(DisconnectEvent { entity }); } } -- cgit v1.2.3