add commands to digital buttons in OI and create/edit necessary commands
[3501/stronghold-2016] / src / org / usfirst / frc / team3501 / robot / subsystems / DriveTrain.java
index de2626bed86e43a5e5fdddde5eca8ab2374f471b..1282be1ba231ce4216fba8f32307ebd7f80f41ca 100644 (file)
@@ -42,7 +42,7 @@ public class DriveTrain extends PIDSubsystem {
   // Drivetrain specific constants that relate to the PID controllers
   private final static double Kp = 1.0, Ki = 0.0,
       Kd = 0.0 * (OUTPUT_SPROCKET_DIAMETER / PULSES_PER_ROTATION)
-          / (WHEEL_SPROCKET_DIAMETER) * WHEEL_DIAMETER;
+      / (WHEEL_SPROCKET_DIAMETER) * WHEEL_DIAMETER;
 
   public DriveTrain() {
     super(kp, ki, kd);
@@ -74,6 +74,7 @@ public class DriveTrain extends PIDSubsystem {
         +Constants.DriveTrain.LEFT_REVERSE);
     rightGearPiston = new DoubleSolenoid(Constants.DriveTrain.RIGHT_FORWARD,
         Constants.DriveTrain.RIGHT_REVERSE);
+    Constants.DriveTrain.inverted = false;
   }
 
   @Override
@@ -220,8 +221,12 @@ public class DriveTrain extends PIDSubsystem {
   }
 
   public void drive(double left, double right) {
-    robotDrive.tankDrive(-left, -right);
     // dunno why but inverted drive (- values is forward)
+    if (!Constants.DriveTrain.inverted)
+      robotDrive.tankDrive(-left,
+          -right);
+    else
+      robotDrive.tankDrive(right, left);
   }
 
   public void driveDistance(double dist, double maxTimeOut) {