import frc.robot.controls.BaseDriverConfig;
import frc.robot.controls.Operator;
import frc.robot.controls.PS5ControllerDriverConfig;
-import frc.robot.subsystems.climb.Climb;
+import frc.robot.subsystems.Intake.Intake;
import frc.robot.subsystems.drivetrain.Drivetrain;
import frc.robot.subsystems.drivetrain.GyroIOPigeon2;
-import frc.robot.subsystems.intake.Intake;
+ import frc.robot.subsystems.shooter.Shooter;
+ import frc.robot.subsystems.spindexer.Spindexer;
+ import frc.robot.subsystems.turret.Turret;
+ import frc.robot.subsystems.hood.Hood;
import frc.robot.util.PathGroupLoader;
import frc.robot.util.Vision.DetectedObject;
import frc.robot.util.Vision.Vision;
// The robot's subsystems are defined here...
private Drivetrain drive = null;
private Vision vision = null;
- private Climb climb = null;
- private Intake intake = null;
+ private Turret turret = null;
+ private Shooter shooter = null;
+ private Hood hood = null;
+ private Spindexer spindexer = null;
++ private Intake intake = null;
+
private Command auto = new DoNothing();
+
// Controllers are defined here
private BaseDriverConfig driver = null;
private Operator operator = null;
default:
- case WaffleHouse:
-
+ case PrimeJr: // AKA Valence
- intake = new Intake();
- climb = new Climb();
+ spindexer = new Spindexer();
++ intake = new Intake();
+
+ case WaffleHouse: // AKA Betabot
+ turret = new Turret();
+ shooter = new Shooter();
- //hood = new Hood();
++ hood = new Hood();
+
case SwerveCompetition: // AKA "Vantage"
case BetaBot: // AKA "Pancake"
case Phil: // AKA "IHOP"
- case PrimeJr:
- intake = new Intake();
-
case Vertigo: // AKA "French Toast"
drive = new Drivetrain(vision, new GyroIOPigeon2());
- driver = new PS5ControllerDriverConfig(drive);
+ driver = new PS5ControllerDriverConfig(drive, shooter, turret, hood, intake, spindexer);
operator = new Operator(drive);
+ // added indexer here for now
+
// Detected objects need access to the drivetrain
DetectedObject.setDrive(drive);