diff --git a/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java b/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java index 8019237..c4b3411 100644 --- a/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java +++ b/2019robot/src/main/java/org/usfirst/frc4388/robot/OI.java @@ -62,9 +62,11 @@ public class OI JoystickButton climbUp = new JoystickButton(m_driverXbox.getJoyStick(), XboxController.RIGHT_TRIGGER_AXIS); - double speed = m_driverXbox.getRightTriggerAxis(); - climbUp.whenPressed(new InitiateClimber(speed)); - climbUp.whenReleased(new InitiateClimber(0)); + JoystickButton climbDown = new JoystickButton(m_driverXbox.getJoyStick(), XboxController.LEFT_TRIGGER_AXIS); + + double speed = m_driverXbox.getRightTriggerAxis() - m_driverXbox.getLeftTriggerAxis(); + climbUp.whileActive(new InitiateClimber(speed)); + climbDown.whileActive(new InitiateClimber(speed)); JoystickButton ratchetFlip = new JoystickButton(m_driverXbox.getJoyStick(), XboxController.Y_BUTTON); ratchetFlip.whenPressed(new ratchetFlip(0.5)); diff --git a/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/Climber.java b/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/Climber.java index 1546ea5..a4728db 100644 --- a/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/Climber.java +++ b/2019robot/src/main/java/org/usfirst/frc4388/robot/subsystems/Climber.java @@ -87,11 +87,15 @@ public class Climber extends Subsystem{ public void setClimbSpeed(double speed) { if (safetySwitch) { - if(isPressed.isFwdLimitSwitchClosed()){ //If leg at max height + if (isPressed.isRevLimitSwitchClosed() && speed < 0){ //If leg at min height, and the input would retract the leg + climberBack.set(0); + climberFront.set(0); + } + if(isPressed.isFwdLimitSwitchClosed() && speed > 0){ //If leg at max height, and the input would extend the leg climberBack.set(0); climberFront.set(FRONT_FREQ * speed); } - else if (!isPressed.isFwdLimitSwitchClosed()){ //If leg not at max height + else { //If leg not at max height climberBack.set(BACK_FREQ * speed); climberFront.set(FRONT_FREQ * speed); }