Write execute method , wrote initialize method, and emptied end method
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / commands / intake / RunIntake.java
CommitLineData
763ccd44
M
1package org.usfirst.frc.team3501.robot.commands.intake;
2
e0c1a10b 3import org.usfirst.frc.team3501.robot.Robot;
dab6e7d6
AD
4
5import edu.wpi.first.wpilibj.Timer;
763ccd44
M
6import 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 */
14public 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}