- Hit fix for build failure
- Added State Machine Editor redraw on assembly reload
- Merged in PR from IGB to fix errors being suppressed by not awaiting an async method
- Added a scroll panel to the StateNodeView so nodes don't get too big when the property list expands. Also solves the issue of the node boundary growing bizarly large when a list is added to the property container
- Merged in PR from IGB for Added amends to stabilise the State Machine Editor and reduce the risk of accidental deletions and errors
- Fix for null StateMachine when attempting to fix a null statemachine. Stupid!
- Removed the validation of connections from the StateMachine as it was removing valid connections. Will circle back to this.
- Fix for null StateMachine in editor when exiting run time from a sub state machine
- Breaking change renamed InitializeState to AwakeState and added StartState
- Prevented state initialization from being called if application not running
- Added a DestroyState method to States to allow for cleanup when the StateMachine is destroyed
- Added PortData clone method
- Made frame delay on transition optional and configurable via the Transition attribute
- Added additional checks for running in playmode in the statemachine
- hot fix to ensure nodes exit before the frame delay is applied
- added a glow to nodes that fades out as they exit
- introduced port colours which influence edge colours
- By default ports are coloured to match their nodes unless a colour is passed to the transition attribute
- Discovered that Jumps can cause stack over flow exceptions so introduced a frame delay between transitions to allow the stack to clear
- Updated the JumpNode to update the valid JumpId's on mouse over and mouse down
- Added NodeWidth nodes to the sub state machine states
- Added support for parallel sub state machines
- Added a fix for handling transition name changes
- Improved StateSelectWindow search by comparing lower case search query again lowercase state names
- State names are now processed to be more readable in the StateSelectorWindow
- Added support for keyboard controls in the StateSelectorWindow
- Added better support for removal of nodes and connections when states are missing/deleted
- Remove the need for SubStateMachines to flag reinitialization
- All nodes are only initialized once
- Added new node iconsStateSelectorWindow.uss
- Hidden relay nodes from the selection menu. Will eventually deprecate them.
- Reduced the state node max character liStateSelectorWindow.ussmit to 30
- Introduced jump nodes to simplify loops and other complex transitions
- Added additional save points when connections are created
- Applied max node width to width as well
- Fix for the NodeWidth attribute being applied to the property container and not the node as a whole
- Prevented BaseSubStateMachine selecting the StateMachine if already selected
- BaseSubStateMachine now selects the sub state machine on update if it is not already selected
- Refactor of SubStateMachine with new base class BaseSubStateMachine
- Allows custom transition ports to be added to derived versions of BaeSubStateMachine
- Refactor of StateMachineController to abstract StateMachineCore
- Removes dependency upon MonoBehaviour and empowers BaseSubStateMachine to be used in non MonoBehaviour contexts
- Added an InitializeState method to States to allow for setup ahead of the call to EnterState
- Converted the Update method of States to virtual removing it's requirement
- Fix for deep nested sub state machines allowing the StateMachineEditor to be opened automatically
- Added support for the EndState of a StateMachine to be passed to it's parent BaseSubStateMachine
- Fix for relay node sizes
- Set max node width to 300px
- Added title filtering to StateNodes
- Abstracted a BaseSubStateMachine to better support custom sub state machine nodes that may want to customise their transitions
- Fix for nodes with properties and long names not filling the property container
- Fix for the state selector window displaying empty groups when searching.
- Fix for groups found in searches being folded.
- Fix for property container width not spanning full node width when there are no properties
-Exposed the current state in the StateMachine and in the StateMachineController
- fix issue with progress bar not being displayed
- refactored the StateMachineGraphView to better separate concerns
- Seperated the graph orientation from port orientation to better separate editor scripts from runtime.
- Fix for introduced build errors
- Hid the samples directory (which still needs actual samples)
- Support for vertical and flipped directional relay nodes
- The state selection menu now appears where the mouse was when it was opened
- Fix for input and output ports being able to connect to their own kind
- Fix for the create state button becoming broken when docking/undocking the state machine editor
- Added a fix for edge positions when dragging out
- Fix for inverted edges. This was a real challenge to understand.
- Fix for bug where connection data could be lost when switching state machines
- Fixed the adding and positioning of new edges by moving the creation process into the StateEdgeListener. This required the graph views position to be used to offset the new edge.
- Support for custom state nodes
- Added revised node colours
- Added support for inherited attributes
- Hotfix for hidden state icons
- The StateSelectorWindow now focuses on the ToolbarSearchField for instant searching
- Added a more dedicated service for icons and moved some icon directories around
- Added an editor tool to toggle the samples directory tilde prefix to make my life easier
- Filtered out abstract states from the state selector
- Added new state icons. Built in states are displayed at the top.
- Added focus loss to close StateSelectorWindow.
- Added new state selector styling.
- Added state selector state grouping.
- Graph view is now drawn on editor update even in edit mode
- This has the advantage of removing the progress state when exiting runtime
- Critical hotfix for the graphview not updating
- Fixed persistence of graph view position and scale
- Fix for nodes not being drawn when the graph view is first opened
- Hotfix for broken edge persistence
- Removed some test code for manipulating edge rendering
- Improved relay nodes
- Fix for scale and position of graph view for new statemachines
- Fix for blank port labels
- Removed entry port from entry node
- Enforced use of an entry node
- Removed option to set entry node
- Fix for SubStateMachine not cleaning up when exiting
- Added support for inherited properties in States
- Added a delay and end node
- Fix a bug in the StateMachineController when sub state machines complete
- Changed the directory structure and names to avoid Editor namespace conflic
- Updated the package.json unity version
- Added support for creating nodes when dropping a ghost edge
- Added support for switching the displayed statemachine when entering and exiting a sub state machine
- Converted node titles from pascal to title case
- Added support for custom node colours and label text
- Added changelog, readme and package.json
- Fix for attempting to load graph view state from a null statemachine