package org.usfirst.frc.team3501.robot.commands.auton;
-import edu.wpi.first.wpilibj.command.Command;
+import org.usfirst.frc.team3501.robot.Constants;
+import org.usfirst.frc.team3501.robot.commands.driving.DriveDistance;
+import org.usfirst.frc.team3501.robot.commands.driving.DriveForTime;
+
+import edu.wpi.first.wpilibj.command.CommandGroup;
/***
* This command will drive the robot through the rock wall.
*
+ * dependency on subsystems: drivetrain
+ *
+ * dependency on other commands: DriveForTime
+ *
* pre-condition: robot is flush against the ramp of the outerworks in front of
* the rock wall
*
* @author Meryem and Avi
*
*/
-public class PassRockWall extends Command {
- public PassRockWall() {
- }
-
- @Override
- protected void initialize() {
- }
+public class PassRockWall extends CommandGroup {
- @Override
- protected void execute() {
- }
-
- @Override
- protected boolean isFinished() {
- return false;
- }
-
- @Override
- protected void end() {
- }
+ public PassRockWall() {
+ if (Constants.Auton.isUsingTime) {
+ addSequential(new DriveForTime(Constants.Auton.passRockWallTime,
+ Constants.Auton.passRockWallSpeed));
+ }
+ else {
+ addSequential(new DriveDistance(
+ Constants.Auton.passRockWallDistance,
+ Constants.DriveTrain.PASS_DEFENSE_TIMEOUT));
+ }
- @Override
- protected void interrupted() {
}
}