Commit | Line | Data |
---|---|---|
f43a1c52 CZ |
1 | package org.usfirst.frc.team3501.robot.commands.driving; |
2 | ||
dfb792a1 | 3 | import org.usfirst.frc.team3501.robot.Constants; |
f43a1c52 | 4 | import org.usfirst.frc.team3501.robot.Robot; |
dfb792a1 | 5 | import org.usfirst.frc.team3501.robot.subsystems.DriveTrain; |
f43a1c52 | 6 | |
0704e870 | 7 | import edu.wpi.first.wpilibj.DoubleSolenoid.Value; |
f43a1c52 CZ |
8 | import edu.wpi.first.wpilibj.command.Command; |
9 | ||
10 | /** | |
0704e870 | 11 | * This command toggles the gear(low or high). |
f43a1c52 CZ |
12 | * |
13 | * post-condition: if the drivetrain is running at high gear, it will be made to | |
14 | * run at low gear, and vice versa | |
15 | */ | |
16 | public class ToggleGear extends Command { | |
dfb792a1 | 17 | DriveTrain driveTrain = Robot.getDriveTrain(); |
f43a1c52 CZ |
18 | |
19 | public ToggleGear() { | |
dfb792a1 | 20 | requires(driveTrain); |
f43a1c52 CZ |
21 | } |
22 | ||
f43a1c52 CZ |
23 | @Override |
24 | protected void initialize() { | |
0704e870 | 25 | |
f43a1c52 CZ |
26 | } |
27 | ||
f43a1c52 CZ |
28 | @Override |
29 | protected void execute() { | |
dfb792a1 AD |
30 | Value leftGearPistonValue = driveTrain.getLeftGearPistonValue(); |
31 | Value rightGearPistonValue = driveTrain.getRightGearPistonValue(); | |
32 | if (leftGearPistonValue == Constants.DriveTrain.LOW_GEAR) { | |
33 | driveTrain.setHighGear(); | |
0704e870 | 34 | } else { |
dfb792a1 | 35 | driveTrain.setLowGear(); |
0704e870 | 36 | } |
f43a1c52 CZ |
37 | } |
38 | ||
f43a1c52 CZ |
39 | @Override |
40 | protected boolean isFinished() { | |
dfb792a1 | 41 | return true; |
f43a1c52 CZ |
42 | } |
43 | ||
f43a1c52 CZ |
44 | @Override |
45 | protected void end() { | |
46 | } | |
47 | ||
f43a1c52 CZ |
48 | @Override |
49 | protected void interrupted() { | |
50 | } | |
51 | } |