humm not sure what your asking
If I understood it correctly you need to always go back to the first state (the listener state).
From the top off my head you can use: go to previous state and wait (x amount).
But if you need that Specific FSM State to be always on, maybe the best is never leave, and use broadcasting Events to all or specific FSMs
Humm not sure if that helps..
Thanks for trying. I guess I wasn't clear. As a simplified example, I have 3 FSMs on the same object. We'll call the object, ObjectX, and the FSMs are Check State, Check Panel, and Do Stuff.
All of them have a "Listener" state, with global events so that they can be called from anywhere.
Check State has TWO listeners. One listener is just called "Listener" and it sends an event named "Check State". The other listener is called "Move Listener" and it runs the MoveIt event. When the game begins, Check State is activated at the Check State listener when someone clicks an object. Then, after it runs the Check State FSM, that FSM calls the Check Panel FSM. Once the Check Panel FSM runs, it calls the Do Stuff FSM. When the Do Stuff FSM finishes, it calls the Check State FSM via the Move Listener event MoveIt. A simple diagram:
GAME START -> MOUSE DOWN -> Check State FSM (Listener State/Check State Event) -> Check Panel FSM -> Do Stuff FSM -> Check State FSM (Move Listener State/MoveIt Event)
The sequence runs properly until the Do Stuff FSM finishes. It goes all the way to its last state and sends the "Send Event" event to call the Check State FSM once more, but the MoveIt event on the Check State FSM never fires. I wondered if it was because I was trying to come into the FSM from two different state/event combinations?