// Copyright (c) FIRST and other WPILib contributors. // Open Source Software; you can modify and/or share it under the terms of // the WPILib BSD license file in the root directory of this project. package frc.robot.commands; import frc.robot.subsystems.Accumulateur; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import edu.wpi.first.networktables.GenericEntry; import edu.wpi.first.wpilibj2.command.CommandBase; import frc.robot.subsystems.Lanceur; public class Force6 extends CommandBase { private Lanceur lanceur; private Accumulateur accumulateur; public void Lancer(Lanceur lanceur) { this.lanceur = lanceur; this.accumulateur = accumulateur; addRequirements(lanceur , accumulateur); } GenericEntry force6; /** Creates a new Force1. */ public Force6(Lanceur lanceur, GenericEntry force6) { this.lanceur = lanceur; addRequirements(lanceur); this.force6 = force6; // Use addRequirements() here to declare subsystem dependencies. } // Called when the command is initially scheduled. @Override public void initialize() { lanceur.setPID(0, 0, 0); } // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { double vitesse = SmartDashboard.getNumber("Force Lanceur", 600); lanceur.lancer(200); if (lanceur.vitesse() > vitesse ){ accumulateur.tourneavant(); accumulateur.tournearriere(); } else { accumulateur.stop(); } lanceur.lancer(force6.getDouble(0)); } // Called once the command ends or is interrupted. @Override public void end(boolean interrupted) { lanceur.stop(); accumulateur.stop(); } // Returns true when the command should end. @Override public boolean isFinished() { return lanceur.distance()>1; } }