This repository was archived by the owner on Sep 5, 2025. It is now read-only.
v2.3.0
What's Changed
- ActionRunner registers itself properly now
- Add
Interruptibleinterface that designates anActionas being interruptible- An
Interruptibleaction has anonInterrupt()method which returns anActionthat will be run when this action is interrupted - You can also use the
.interruptible(onInterruption: Action)function to turn anActioninto anInterruptible.
- An
RaceActionwill trigger theonInterruptactions of anyInterruptibles after its first componentActionends.- Add
requirementsproperty (getRequirements()function for Java users) ofActionrequirementsis of typeSet<Any>, so any object can be used as a requirement- If you attempt to schedule an
ActionusingActionRunner.run(),ActionRunnerwill check to see if that action's requirements are already in use from a different action in the queue. If they are,ActionRunnerwill remove the older action from the queue, freeing its requirements for the new action. If the old action isInterruptible,ActionRunnerwill also add itsonInterruptto the queue.
Full Changelog: v2.2.1...v2.3.0