X-Git-Url: http://challenge-bot.com/repos/?p=3501%2F2017steamworks;a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fdriving%2FToggleDriveGear.java;fp=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fdriving%2FToggleDriveGear.java;h=ee15ec8a5415c7dcc68b952649edf7600e93b060;hp=0000000000000000000000000000000000000000;hb=fc01fb0fb74d31a0818c69d0306253deb4236c58;hpb=cb8e86cb498c12dcf4e2b7a5916fc6f4926b77cf diff --git a/src/org/usfirst/frc/team3501/robot/commands/driving/ToggleDriveGear.java b/src/org/usfirst/frc/team3501/robot/commands/driving/ToggleDriveGear.java new file mode 100644 index 0000000..ee15ec8 --- /dev/null +++ b/src/org/usfirst/frc/team3501/robot/commands/driving/ToggleDriveGear.java @@ -0,0 +1,51 @@ +package org.usfirst.frc.team3501.robot.commands.driving; + +import org.usfirst.frc.team3501.robot.Constants; +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.DriveTrain; + +import edu.wpi.first.wpilibj.DoubleSolenoid.Value; +import edu.wpi.first.wpilibj.command.Command; + +/** + * This command toggles the gear(low or high). + * + * post-condition: if the drivetrain is running at high gear, it will be made to + * run at low gear, and vice versa + */ +public class ToggleDriveGear extends Command { + DriveTrain driveTrain = Robot.getDriveTrain(); + + public ToggleDriveGear() { + requires(driveTrain); + } + + @Override + protected void initialize() { + + } + + @Override + protected void execute() { + Value leftPistonValue = driveTrain.getLeftDriveTrainPiston(); + Value rightPistonValue = driveTrain.getRightDriveTrainPiston(); + if (leftPistonValue == Constants.DriveTrain.REVERSE_PISTON_VALUE) { + driveTrain.setHighGear(); + } else { + driveTrain.setLowGear(); + } + } + + @Override + protected boolean isFinished() { + return true; + } + + @Override + protected void end() { + } + + @Override + protected void interrupted() { + } +}