Add code to alternate piston values every second while the index wheel is running...
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / commands / shooter / RunIndexWheelContinuous.java
index 08ead3ac4bb6b52dfb8fd9cc974fd9d80d85724f..8a640e78951bb7ba007ae6e0f8c764126616127a 100644 (file)
@@ -4,6 +4,7 @@ import org.usfirst.frc.team3501.robot.Constants;
 import org.usfirst.frc.team3501.robot.Robot;
 import org.usfirst.frc.team3501.robot.subsystems.Shooter;
 
+import edu.wpi.first.wpilibj.Timer;
 import edu.wpi.first.wpilibj.command.Command;
 
 /**
@@ -20,6 +21,7 @@ import edu.wpi.first.wpilibj.command.Command;
  */
 public class RunIndexWheelContinuous extends Command {
   private Shooter shooter = Robot.getShooter();
+  private Timer t = new Timer();
 
   /**
    * See JavaDoc comment in class for details
@@ -30,27 +32,24 @@ public class RunIndexWheelContinuous extends Command {
 
   @Override
   protected void initialize() {
+    t.reset();
   }
 
   @Override
   protected void execute() {
-    double shooterSpeed = shooter.getShooterRPM();
-    double targetShooterSpeed = shooter.getTargetShootingSpeed();
-    double threshold = shooter.getRPMThreshold();
-    // if (Math.abs(shooterSpeed - targetShooterSpeed) <= threshold)
-
-    if (timeSinceInitialized() % 0.5 <= 0.02) {
-
-      if (Robot.getDriveTrain()
-          .getLeftGearPistonValue() == Constants.DriveTrain.LOW_GEAR) {
-        System.out.println("shifting to low gear " + timeSinceInitialized());
-        Robot.getDriveTrain().setHighGear();
+    if (t.get() % 1 == 0) {
+      if (Shooter.getShooter().getPistonValue() == Constants.Shooter.LOW_GEAR) {
+        Shooter.getShooter().setHighGear();
       } else {
-        System.out.println("shifting to high gear " + timeSinceInitialized());
-        Robot.getDriveTrain().setLowGear();
+        Shooter.getShooter().setLowGear();
       }
     }
-    shooter.runIndexWheel();
+
+    double shooterSpeed = shooter.getShooterRPM();
+    double targetShooterSpeed = shooter.getTargetShootingSpeed();
+    double threshold = shooter.getRPMThreshold();
+    if (Math.abs(shooterSpeed - targetShooterSpeed) <= threshold)
+      shooter.runIndexWheel();
   }
 
   @Override
@@ -66,7 +65,6 @@ public class RunIndexWheelContinuous extends Command {
   @Override
   protected boolean isFinished() {
     return false;
-
   }
 
 }