diff --git a/src/navigation.rs b/src/navigation.rs index 86c8bc6..33d3eef 100644 --- a/src/navigation.rs +++ b/src/navigation.rs @@ -379,25 +379,36 @@ where .get_resource::>() .unwrap() .clone(); + const SNAP: &str = "SNAP"; app.init_resource::() .register_type::() .register_type::() .register_type::() - .add_system(update_direction) + .add_system(update_direction.before(SNAP)) .add_system(speak_direction.chain(error_handler)) .add_system(add_speed) .add_system_to_stage(CoreStage::PostUpdate, remove_speed); 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)); + .add_system( + snap:: + .chain(error_handler) + .label(SNAP) + .before(MOVEMENT_CONTROLS), + ); } else { let states = config.movement_control_states; for state in states { app.add_system_set( SystemSet::on_update(state) .with_system(movement_controls::.label(MOVEMENT_CONTROLS)) - .with_system(snap::.chain(error_handler).before(MOVEMENT_CONTROLS)), + .with_system( + snap:: + .chain(error_handler) + .label(SNAP) + .before(MOVEMENT_CONTROLS), + ), ); } }