0
Answered

State Unit "Stop" always calls "Stopped"?

NeedsLoomis 3 months ago updated 3 months ago 2

I would assume "Stopped" would only ever get called when the state unit gets deactivated and is no longer running, but instead it gets called every time something tells the state unit to stop, even if it's already been stopped.  Is this intentional?  It makes things like transitions between State Units difficult to setup, as whatever comes after the state unit can get triggered over and over.

In this example, button down should stop the first state unit, and thus start the second one, and that should be that.  Instead button down will continue to activate the second state unit over and over.



Bolt Version:
1.4.5
Unity Version:
2019.1
Platform(s):
Scripting Backend:
.NET Version (API Compatibility Level):
Answered

Hi NeedsLoomis,

I see the issue. Unfortunately this is "by-design" (it's mostly just supposed to be a "next" port to continue your flow). In Bolt 2, I'm rethinking the state unit to split it in two parts (Start and Stop), and I'll keep this consideration in mind. Most likely, I could provide an "Is Active" unit as a third member of that trio.

Cool cool, good to now.  I discovered the "Once" unit, so at least there is a simple workaround.