diff --git a/src/navigation.rs b/src/navigation.rs index 1473369..0af6a74 100644 --- a/src/navigation.rs +++ b/src/navigation.rs @@ -270,7 +270,7 @@ fn add_speed(mut commands: Commands, query: Query, Without } } -fn limit_speed(mut query: Query<(&mut Speed, &MaxSpeed)>) { +pub(crate) fn limit_speed(mut query: Query<(&mut Speed, &MaxSpeed)>) { for (mut speed, max_speed) in &mut query { if **speed > **max_speed { **speed = **max_speed; @@ -391,8 +391,12 @@ where .add_system_to_stage(CoreStage::PostUpdate, log_area_descriptions::); const MOVEMENT_CONTROLS: &str = "MOVEMENT_CONTROLS"; if config.movement_control_states.is_empty() { - app.add_system(movement_controls::.label(MOVEMENT_CONTROLS)) - .add_system(snap.chain(error_handler).before(MOVEMENT_CONTROLS)); + app.add_system( + movement_controls:: + .label(MOVEMENT_CONTROLS) + .after(limit_speed), + ) + .add_system(snap.chain(error_handler).before(MOVEMENT_CONTROLS)); } else { let states = config.movement_control_states; for state in states {