Action to check another FSM's running status.
Running: enabled and active
Stopped: disabled or inactive
Attached is the zip, just put it in next release
Why it's awesome:
This is an action that checks or waits (depending on "everyFrame" option) if/when an FSM is running or stopped. This allows you to use completely separate FSMs as SubFSMs.
Example 1: Start an animation FSM (by enabling, or sending event), which disables itself once finished (that's the key of this design pattern), and use this action to wait until it's complete, without having to use global variables, or unnecessary cross-FSM awareness.
Example 2: Have a manager-FSM wait until some button (or its FSM) in the scene is enabled (assuming its FSM is disabled by default), and then continue state flow based on that.
Why Using Current Functionality to do this on GameObject Level is NOT the same:
I have a character who's always there, but animates an attack once in a while, that attack animation action can be just another FSM, which is always disabled until it need to do its animation, reset the visual state, and disable itself (FSM self). Working on GO level gives much less control, and/or is much more complex to set up.