import edu.wpi.first.wpilibj.command.Command;
+/***
+ * This command will expel a boulder from the robot, if it is even present to
+ * begin with.
+ *
+ * pre-condition: Intake arm is at correct height and a boulder is present
+ * inside the robot.
+ *
+ * post-condition: A boulder is expelled from inside the robot to the field
+ * outside of the robot.
+ *
+ * @author Lauren and Niyati
+ *
+ */
+
public class ExpelBall extends Command {
+ private final int TIMEOUT_AMOUNT = 5;
public ExpelBall() {
+ requires(Robot.intakeArm);
}
@Override
protected void initialize() {
+ this.setTimeout(TIMEOUT_AMOUNT);
if (Robot.photogate.isBallPresent())
Robot.intakeArm.outputBall();
}
@Override
protected boolean isFinished() {
- return !Robot.photogate.isBallPresent();
+ return (this.isTimedOut() || !Robot.photogate.isBallPresent());
}
@Override
protected void end() {
-
+ Robot.intakeArm.stopRollers();
}
@Override