From c8485040e32de483a6c7f398a22cdedf72088c0d Mon Sep 17 00:00:00 2001 From: poffo Date: Mon, 4 Dec 2023 01:19:40 -0300 Subject: [PATCH] BevyRenet: add emit_server_events_system for RenetServerPlugin We now emit server events on its own system. Now, transports can update and disconnect clients before events are emitted. Should fix some 1 frame disconnect/connect delays. --- bevy_renet/src/lib.rs | 10 +++++++++- bevy_renet/src/steam.rs | 3 ++- bevy_renet/src/transport.rs | 3 ++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/bevy_renet/src/lib.rs b/bevy_renet/src/lib.rs index dda6b137..d76b1103 100644 --- a/bevy_renet/src/lib.rs +++ b/bevy_renet/src/lib.rs @@ -36,13 +36,21 @@ impl Plugin for RenetServerPlugin { fn build(&self, app: &mut App) { app.init_resource::>(); app.add_systems(PreUpdate, Self::update_system.run_if(resource_exists::())); + app.add_systems( + PreUpdate, + Self::emit_server_events_system + .run_if(resource_exists::()) + .after(Self::update_system), + ); } } impl RenetServerPlugin { - pub fn update_system(mut server: ResMut, time: Res