Controls.java is currently a "God Class" (over 1100 lines) that handles controller bindings for all subsystems, driver/operator/solo modes, and complex scoring logic. Action Items:
Split Controls.java into smaller classes based on responsibility:
DriverControls: Handles driver controller inputs.
OperatorControls: Handles operator controller inputs.
SoloControls: Handles solo controller inputs.
ControlMapper: Interface or base class for mapping inputs to commands.
Move complex scoring logic (switch statements for Coral/Algae modes) into SuperStructure or specific Command factories.
Controls.java is currently a "God Class" (over 1100 lines) that handles controller bindings for all subsystems, driver/operator/solo modes, and complex scoring logic. Action Items:
Split Controls.java into smaller classes based on responsibility:
DriverControls: Handles driver controller inputs.
OperatorControls: Handles operator controller inputs.
SoloControls: Handles solo controller inputs.
ControlMapper: Interface or base class for mapping inputs to commands.
Move complex scoring logic (switch statements for Coral/Algae modes) into SuperStructure or specific Command factories.