diff --git a/src/main/java/frc/robot/managers/SuperstructureManager.java b/src/main/java/frc/robot/managers/SuperstructureManager.java index 7545818..eb529e0 100644 --- a/src/main/java/frc/robot/managers/SuperstructureManager.java +++ b/src/main/java/frc/robot/managers/SuperstructureManager.java @@ -211,10 +211,13 @@ public Command getShelfIntakeCommand() { } public Command getShelfIntakeEvilCommand() { - return getCommand(States.INTAKING_CONE_SHELF_EVIL) - // Interrupt command early, start stowing as soon as we are holding a cone - don't wait - // until wrist is at goal (since it gets messed up after the impact with the shelf) - .until(() -> intake.getGamePiece() == HeldGamePiece.CONE) + return Commands.runOnce(() -> intake.setGamePiece(HeldGamePiece.NOTHING), intake) + .andThen( + getCommand(States.INTAKING_CONE_SHELF_EVIL) + // Interrupt command early, start stowing as soon as we are holding a cone - don't + // wait until wrist is at goal (since it gets messed up after the impact with the + // shelf) + .until(() -> intake.getGamePiece() == HeldGamePiece.CONE)) .andThen(getCommand(States.STOWED)) .withName("SuperstructureShelfIntakeEvil"); }