diff --git a/yagsl/java/swervelib/SwerveInputStream.java b/yagsl/java/swervelib/SwerveInputStream.java index e895911..44364bd 100644 --- a/yagsl/java/swervelib/SwerveInputStream.java +++ b/yagsl/java/swervelib/SwerveInputStream.java @@ -96,7 +96,7 @@ public class SwerveInputStream implements Supplier /** * Target to aim at. */ - private Optional aimTarget = Optional.empty(); + private Optional> aimTarget = Optional.empty(); /** * Target {@link Supplier} to drive towards when driveToPose is enabled. */ @@ -568,7 +568,7 @@ public SwerveInputStream headingWhile(boolean headingState) * @param aimTarget {@link Pose2d} to point at. * @return this */ - public SwerveInputStream aim(Pose2d aimTarget) + public SwerveInputStream aim(Supplier aimTarget) { this.aimTarget = aimTarget.equals(Pose2d.kZero) ? Optional.empty() : Optional.of(aimTarget); return this; @@ -1120,7 +1120,7 @@ public ChassisSpeeds get() } case AIM -> { - var targetVector = getTargetVector(aimTarget.orElseThrow()); + var targetVector = getTargetVector(aimTarget.orElseThrow().get()); var targetDistance = targetVector.getNorm(); // TODO: Shoot on the move, using // targetVector = targetVector.div(targetDistance).times(sotmDistanceToRPSMap.get(targetDistance)*flyWheelCircumference)