X-Git-Url: http://challenge-bot.com/repos/?p=3501%2F2017steamworks;a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fclimber%2FToggleWinch.java;fp=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fclimber%2FToggleWinch.java;h=47e464c9f7b34ecdbd53e7e15948c9287abd9a47;hp=0000000000000000000000000000000000000000;hb=ba9f0b126afd5973b11a22dd6640d8d6f0822f5a;hpb=150f450f2b4f9e6094d71007507a7b877e05328a diff --git a/src/org/usfirst/frc/team3501/robot/commands/climber/ToggleWinch.java b/src/org/usfirst/frc/team3501/robot/commands/climber/ToggleWinch.java new file mode 100644 index 0000000..47e464c --- /dev/null +++ b/src/org/usfirst/frc/team3501/robot/commands/climber/ToggleWinch.java @@ -0,0 +1,46 @@ +package org.usfirst.frc.team3501.robot.commands.climber; + +import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.subsystems.Climber; + +import edu.wpi.first.wpilibj.command.Command; + +public class ToggleWinch extends Command { + Climber climber = Robot.getClimber(); + private double climbingSpeed; + + public ToggleWinch() { + requires(climber); + climbingSpeed = climber.CLIMBER_SPEED; + } + + @Override + protected void initialize() { + } + + @Override + protected void execute() { + if (climber.shouldBeClimbing) { + climber.setCANTalonsBrakeMode(climber.COAST_MODE); + climber.setMotorValues(climbingSpeed); + } else { + climber.setCANTalonsBrakeMode(climber.BRAKE_MODE); + end(); + } + } + + @Override + protected boolean isFinished() { + return false; + } + + @Override + protected void end() { + climber.shouldBeClimbing = !climber.shouldBeClimbing; + } + + @Override + protected void interrupted() { + end(); + } +}