veloren_common_systems/
lib.rs1#![feature(extract_if, let_chains)]
2#![expect(clippy::option_map_unit_fn)]
3
4mod aura;
5mod beam;
6mod buff;
7pub mod character_behavior;
8pub mod controller;
9mod interpolation;
10pub mod melee;
11mod mount;
12pub mod phys;
13mod phys_events;
14pub mod projectile;
15mod shockwave;
16mod stats;
17mod tether;
18
19use common_ecs::{System, dispatch};
21use specs::DispatcherBuilder;
22
23pub fn add_local_systems(dispatch_builder: &mut DispatcherBuilder) {
24 dispatch::<interpolation::Sys>(dispatch_builder, &[]);
26 dispatch::<tether::Sys>(dispatch_builder, &[]);
27 dispatch::<mount::Sys>(dispatch_builder, &[]);
28 dispatch::<controller::Sys>(dispatch_builder, &[&mount::Sys::sys_name()]);
29 dispatch::<character_behavior::Sys>(dispatch_builder, &[&controller::Sys::sys_name()]);
30 dispatch::<buff::Sys>(dispatch_builder, &[]);
31 dispatch::<stats::Sys>(dispatch_builder, &[&buff::Sys::sys_name()]);
32 dispatch::<phys::Sys>(dispatch_builder, &[
33 &interpolation::Sys::sys_name(),
34 &controller::Sys::sys_name(),
35 &mount::Sys::sys_name(),
36 &stats::Sys::sys_name(),
37 ]);
38 dispatch::<phys_events::Sys>(dispatch_builder, &[&phys::Sys::sys_name()]);
39 dispatch::<projectile::Sys>(dispatch_builder, &[&phys::Sys::sys_name()]);
40 dispatch::<shockwave::Sys>(dispatch_builder, &[&phys::Sys::sys_name()]);
41 dispatch::<beam::Sys>(dispatch_builder, &[&phys::Sys::sys_name()]);
42 dispatch::<aura::Sys>(dispatch_builder, &[]);
43}