Commit | Line | Data |
---|---|---|
763ccd44 M |
1 | package org.usfirst.frc.team3501.robot.commands.intake; |
2 | ||
e0c1a10b | 3 | import org.usfirst.frc.team3501.robot.Robot; |
dab6e7d6 AD |
4 | |
5 | import edu.wpi.first.wpilibj.Timer; | |
763ccd44 M |
6 | import edu.wpi.first.wpilibj.command.Command; |
7 | ||
8 | /** | |
9 | * | |
10 | * Starts running the intake for a specific period of time that the user inputs. | |
e8eb8b46 | 11 | * |
763ccd44 M |
12 | * @author Meeta |
13 | */ | |
14 | public class RunIntake extends Command { | |
e8eb8b46 | 15 | private double timeToMove; |
dab6e7d6 | 16 | public Timer timer; |
763ccd44 | 17 | |
e8eb8b46 | 18 | public RunIntake(double timeToMove) { |
dab6e7d6 | 19 | timer = new Timer(); |
e8eb8b46 | 20 | this.timeToMove = timeToMove; |
763ccd44 M |
21 | } |
22 | ||
23 | @Override | |
24 | protected boolean isFinished() { | |
dab6e7d6 | 25 | return timer.get() >= timeToMove; |
763ccd44 M |
26 | } |
27 | ||
28 | // Called just before this Command runs the first time | |
29 | @Override | |
30 | protected void initialize() { | |
e0c1a10b | 31 | timer.start(); |
763ccd44 M |
32 | } |
33 | ||
34 | // Called repeatedly when this Command is scheduled to run | |
35 | @Override | |
36 | protected void execute() { | |
e0c1a10b | 37 | Robot.getIntake().setSpeed(Robot.getIntake().INTAKE_SPEED); |
763ccd44 M |
38 | } |
39 | ||
40 | // Called once after isFinished returns true | |
41 | @Override | |
42 | protected void end() { | |
43 | } | |
44 | ||
45 | // Called when another command which requires one or more of the same | |
46 | // subsystems is scheduled to run | |
47 | @Override | |
48 | protected void interrupted() { | |
dab6e7d6 | 49 | end(); |
763ccd44 M |
50 | } |
51 | } |