1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use bevy_app::{App, Plugin as PluginType};
use bevy_ecs::schedule::{IntoSystemConfig, IntoSystemSetConfig};
use crate::{
change_detection::{on_despawn, HostSyncEvent},
system_set::HostSyncChangeTracking,
BeforeReceiveEvents, ReceiveEvents,
};
pub struct SharedPlugin;
impl PluginType for SharedPlugin {
fn build(&self, app: &mut App) {
app
.add_event::<HostSyncEvent>()
.configure_set(HostSyncChangeTracking.before(BeforeReceiveEvents))
.configure_set(BeforeReceiveEvents.before(ReceiveEvents))
.add_system(on_despawn.in_set(HostSyncChangeTracking));
}
}