From 236c29127524a01f246d90ed00a34fccee5396f8 Mon Sep 17 00:00:00 2001 From: Cyberarm Date: Sun, 29 Jan 2023 19:51:59 -0600 Subject: [PATCH] Fixed Move unlikely to correctly handle backward destinations, add driver feedback for co-pilot toggle. --- .../minibots/cyberarm/chiron/states/autonomous/Move.java | 4 ++-- .../cyberarm/chiron/states/teleop/ArmDriverControl.java | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/autonomous/Move.java b/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/autonomous/Move.java index f54934d..9ae4e15 100644 --- a/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/autonomous/Move.java +++ b/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/autonomous/Move.java @@ -79,8 +79,8 @@ public class Move extends CyberarmState { if (Math.abs(travelledDistance) < easeInDistance) { ratio = travelledDistance / easeInDistance; - } else if (Math.abs(travelledDistance) > targetDistance - easeOutDistance) { - ratio = (targetDistance - Math.abs(travelledDistance)) / easeOutDistance; + } else if (Math.abs(travelledDistance) > Math.abs(targetDistance) - easeOutDistance) { + ratio = (Math.abs(targetDistance) - Math.abs(travelledDistance)) / easeOutDistance; } ratio = Range.clip(ratio, 0.0, 1.0); diff --git a/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/teleop/ArmDriverControl.java b/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/teleop/ArmDriverControl.java index 9256bee..f88ae9a 100644 --- a/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/teleop/ArmDriverControl.java +++ b/TeamCode/src/main/java/org/timecrafters/minibots/cyberarm/chiron/states/teleop/ArmDriverControl.java @@ -164,6 +164,12 @@ public class ArmDriverControl extends CyberarmState { // Swap controlling gamepad if (gamepad == engine.gamepad2 && button.equals("guide")) { controller = controller == engine.gamepad1 ? engine.gamepad2 : engine.gamepad1; + + if (controller == engine.gamepad1) { + engine.telemetry.speak("Pilot Only"); + } else { + engine.telemetry.speak("Co-Pilot Enabled"); + } } if (gamepad != controller) {