State Connections represent how state changes of a node affect another node or Label. An node's state is numeric value that is equal to the number of resources currently on the element. State changes occur when an element receives or looses resources.
There are four different State Connections: Node Modifiers, Label Modifiers, Triggers, and Activators. All are represented with dotted lines in the diagrams. The type of a state connector is determined by the elements it connects and its label:
- A Node Modifier connects two nodes and indicates how state changes modify the number of resources on its target node. Its label starts with a + or - to indicate incrementation or decrementation.
- A Label Modifier connects a node to the Label of a Resource Connection or another State Connection and indicates how state changes modify the value of the target label. The label of a Label Modifier also starts with a + or - to indicate incrementation or decrementation.
- A Trigger connects two nodes. Triggers are fired when the source node's inputs are Satisfied. Fired triggers will fire their target nodes. Triggers are labeled with a '*' unless its source node is a Gate. All State Modifiers that start from a Gate are Triggers.
- An Activator connects two nodes. It indicates what states of the source node allow or prevent the target node from firing.
To create State Connections using the editor click open space or an element to start it. Click another element to end the State Connection at that element. Clicking open space will create waypoints. Double click open space to end the Connection in open space.
When selecting an existing State Connection you can drag the control points over open space or elements to attach or detach the connection.
Press Insert to add waypoints for existing State Connections.