diff --git a/commandsv3/src/main/java/org/wpilib/command3/Trigger.java b/commandsv3/src/main/java/org/wpilib/command3/Trigger.java index 1c6da4f9505..c5c543f7f53 100644 --- a/commandsv3/src/main/java/org/wpilib/command3/Trigger.java +++ b/commandsv3/src/main/java/org/wpilib/command3/Trigger.java @@ -115,6 +115,19 @@ public Trigger(Scheduler scheduler, EventLoop loop, BooleanSupplier condition) { m_loop.bind(m_eventLoopCallback); } + /** + * Starts the command when the condition changes. + * + * @param command the command to start + * @return this trigger, so calls can be chained + */ + public Trigger onChange(Command command) { + requireNonNullParam(command, "command", "onChange"); + addBinding(BindingType.SCHEDULE_ON_RISING_EDGE, command); + addBinding(BindingType.SCHEDULE_ON_FALLING_EDGE, command); + return this; + } + /** * Starts the given command whenever the condition changes from `false` to `true`. *