implement ToggleWinch command
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / commands / climber / RunWinchContinuous.java
index 6b8db75cc2c8eee9ccc09bb0572eeec1257c75f9..210199d86e2cb3dc178fb5d289f0446e4147368f 100644 (file)
@@ -1,6 +1,7 @@
 package org.usfirst.frc.team3501.robot.commands.climber;
 
 import org.usfirst.frc.team3501.robot.Robot;
+import org.usfirst.frc.team3501.robot.subsystems.DriveTrain;
 
 import edu.wpi.first.wpilibj.command.Command;
 
@@ -8,8 +9,8 @@ import edu.wpi.first.wpilibj.command.Command;
  * This command runs the drive train motors (which runs the winch) continuously
  * at a specified speed until the button triggering it is released
  *
- * pre-condition: This command must be run by a button in OI. The robot must be
- * attached to the rope.
+ * pre-condition: This command must be run by a button in OI with
+ * button.whileHeld(...). The robot must be attached to the rope.
  *
  * post-condition: Drive train motors set to a specified speed.
  *
@@ -17,7 +18,8 @@ import edu.wpi.first.wpilibj.command.Command;
  *
  */
 public class RunWinchContinuous extends Command {
-  private double motorVal;
+  DriveTrain driveTrain = Robot.getDriveTrain();
+  private double climbingSpeed;
 
   /**
    * See JavaDoc comment in class for details
@@ -25,19 +27,18 @@ public class RunWinchContinuous extends Command {
    * @param motorVal
    *          value range is from -1 to 1
    */
-  public RunWinchContinuous(double motorVal) {
-    requires(Robot.getDriveTrain());
-    this.motorVal = motorVal;
+  public RunWinchContinuous() {
+    requires(driveTrain);
+    climbingSpeed = driveTrain.CLIMBER_SPEED;
   }
 
   @Override
   protected void initialize() {
-    Robot.getDriveTrain().setMotorValues(motorVal, motorVal);
   }
 
   @Override
   protected void execute() {
-
+    Robot.getDriveTrain().setMotorValues(climbingSpeed, climbingSpeed);
   }
 
   @Override