From e4f60ff0249b629133794f67af3477b7324e6c3b Mon Sep 17 00:00:00 2001 From: Nolan Darilek Date: Wed, 28 Sep 2022 09:32:33 -0500 Subject: [PATCH] Migrate to actions for setting velocities. --- src/navigation.rs | 82 +++++++++++++++++++++++++---------------------- 1 file changed, 43 insertions(+), 39 deletions(-) diff --git a/src/navigation.rs b/src/navigation.rs index 922361c..d70f0d6 100644 --- a/src/navigation.rs +++ b/src/navigation.rs @@ -6,7 +6,7 @@ use std::{ use bevy::prelude::*; use bevy_rapier2d::prelude::*; use bevy_tts::Tts; -use leafwing_input_manager::prelude::*; +use leafwing_input_manager::{axislike::DualAxisData, prelude::*}; use crate::{ commands::RunIfExistsExt, @@ -22,6 +22,8 @@ use crate::{ pub enum NavigationAction { Move, Rotate, + SetLinearVelocity, + SetAngularVelocity, SnapLeft, SnapRight, SnapCardinal, @@ -39,16 +41,10 @@ impl Default for MaxSpeed { } } -#[derive(Component, Clone, Copy, Debug, Deref, DerefMut, Reflect)] +#[derive(Component, Clone, Copy, Default, Debug, Deref, DerefMut, Reflect)] #[reflect(Component)] pub struct RotationSpeed(pub Angle); -impl Default for RotationSpeed { - fn default() -> Self { - Self(Angle::Radians(0.)) - } -} - #[derive(Component, Clone, Copy, Debug, Default, Deref, DerefMut, Reflect)] #[reflect(Component)] pub struct Speed(pub f32); @@ -65,32 +61,22 @@ impl Default for SnapTimer { fn movement_controls( mut commands: Commands, config: Res>, - time: Res