65 lines
1.8 KiB
Java

// 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;
}
}