diff --git a/tasks/lesson2-indexer-task/src/main/java/frc/robot/RobotContainer.java b/tasks/lesson2-indexer-task/src/main/java/frc/robot/RobotContainer.java index 1500ca0..a77162b 100644 --- a/tasks/lesson2-indexer-task/src/main/java/frc/robot/RobotContainer.java +++ b/tasks/lesson2-indexer-task/src/main/java/frc/robot/RobotContainer.java @@ -22,9 +22,10 @@ public RobotContainer() { private void configureBindings() { // TODO: Bind indexForSeconds(1.5) to joystick button 1 + joystick.button(1).onTrue(indexer.indexForSeconds(1.5)); } - public Command getAutonomousCommand() { + public Command getAutonomousCommand() { return null; } } diff --git a/tasks/lesson2-indexer-task/src/main/java/frc/robot/commands/ExampleCommand.java b/tasks/lesson2-indexer-task/src/main/java/frc/robot/commands/ExampleCommand.java index 318de13..c832875 100644 --- a/tasks/lesson2-indexer-task/src/main/java/frc/robot/commands/ExampleCommand.java +++ b/tasks/lesson2-indexer-task/src/main/java/frc/robot/commands/ExampleCommand.java @@ -9,7 +9,7 @@ /** An example command that uses an example subsystem. */ public class ExampleCommand extends Command { - @SuppressWarnings({"PMD.UnusedPrivateField", "PMD.SingularField"}) + @SuppressWarnings({"PMD.UnusedPrivateField", "PMD.SingularField", "unused"}) private final ExampleSubsystem m_subsystem; /** diff --git a/tasks/lesson2-indexer-task/src/main/java/frc/robot/subsystems/Indexer.java b/tasks/lesson2-indexer-task/src/main/java/frc/robot/subsystems/Indexer.java index e89f0e5..4f90aa4 100644 --- a/tasks/lesson2-indexer-task/src/main/java/frc/robot/subsystems/Indexer.java +++ b/tasks/lesson2-indexer-task/src/main/java/frc/robot/subsystems/Indexer.java @@ -4,10 +4,12 @@ package frc.robot.subsystems; +import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Indexer extends SubsystemBase { // TODO: Add indexing state variable here + public boolean indexing; /** Creates a new Indexer subsystem. */ public Indexer() {} @@ -15,11 +17,13 @@ public Indexer() {} /** Starts the indexing process. */ public void startIndexing() { // TODO: Set indexing state to true + indexing = true; } /** Stops the indexing process. */ public void stopIndexing() { // TODO: Set indexing state to false + indexing = false; } /** @@ -29,10 +33,22 @@ public void stopIndexing() { */ public boolean isIndexing() { // TODO: Return indexing state - return false; + return indexing; } // TODO: Implement indexForSeconds() command factory + public Command indexForSeconds(double seconds){ + int myInt = (int)seconds*1000; + startIndexing(); + try { + Thread.sleep(myInt); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + stopIndexing(); + return null; + } @Override public void periodic() {