diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 30b12ab..9bd888d 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -6,17 +6,29 @@ package frc.robot; import com.pathplanner.lib.auto.AutoBuilder; +import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard; +import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab; +import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard; +import edu.wpi.first.wpilibj.DriverStation; +import edu.wpi.first.wpilibj.DriverStation.Alliance; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.PrintCommand; +import edu.wpi.first.wpilibj.DriverStation; import edu.wpi.first.wpilibj2.command.button.CommandXboxController; import frc.robot.constants.AutoConstants; import frc.robot.constants.OIConstants; import frc.robot.subsystems.Drivetrain; +import frc.robot.utilities.Utilities; public class RobotContainer { + + Boolean isRed; + private Drivetrain drivetrain; + private Utilities utilities; + private CommandXboxController driver; private SendableChooser autoChooser; @@ -26,10 +38,12 @@ public class RobotContainer { driver = new CommandXboxController(OIConstants.kDriverControllerPort); - autoChooser = AutoBuilder.buildAutoChooser(); - configureBindings(); } + + + + private void configureBindings() { drivetrain.setDefaultCommand( @@ -40,8 +54,16 @@ public class RobotContainer { () -> true ) ); + + ShuffleboardTab tab = Shuffleboard.getTab("SideFirst"); + + if (Utilities.ShiftFirst() == Alliance.Red) { + tab.add("IsRed", isRed); +} + } + public Command getAutonomousCommand() { if(AutoConstants.kAutoConfigOk) { return autoChooser.getSelected(); diff --git a/src/main/java/frc/robot/utilities/Utilities.java b/src/main/java/frc/robot/utilities/Utilities.java new file mode 100644 index 0000000..58e6b25 --- /dev/null +++ b/src/main/java/frc/robot/utilities/Utilities.java @@ -0,0 +1,32 @@ +package frc.robot.utilities; + +import com.pathplanner.lib.auto.AutoBuilder; + +import edu.wpi.first.wpilibj.DriverStation; +import edu.wpi.first.wpilibj.DriverStation.Alliance; + +public class Utilities { + static String gameData; + + static Boolean Blue = false; + + static Boolean Red = false; + + public static Alliance ShiftFirst() { + gameData = DriverStation.getGameSpecificMessage(); + + + if(gameData.length() > 0) { + switch (gameData.charAt(0)) { + case 'B' : + return Alliance.Red; + case 'R' : + return Alliance.Blue; + default : + return null; + } + } + return null; + } + +}