Event Nodes are responsible for beginning and triggering any Flow Execution. Without an Event node nothing will really happen in your flowscript. You add Event nodes to respond to world or object events and changes like Input, Triggers, Collisions etc. and finally connect their flow outputs to other nodes to designate what will happen when the event is triggered. All Event nodes have a red title name, no inputs, and any number of outputs in a mix of Flow and Value ports. Value ports of Event nodes, usually contain information about the event that has just been triggered.
Some Event Nodes require an object reference on which the event will take place. By default, the target object will be “Self”, which corresponds to the gameobject on which the FlowScriptController component is attached to. You are though free to change the target object through the inspector by either assigning a new reference or linking a blackboard variable.
All of the Event Nodes that are related to an object, like Trigger, Collision, Mouse etc, can optionally also work with multiple targets instead of only one. This option can be enabled in the Event Node inspector panel. When the “Target Mode” option is set to “Multiple Targets” instead of “Single Target”, then the node will work with a list of objects (of the correct type), rather than a single object of such type. As such, the event will be fired when any of the targets fire that event.
Following is an example of using a MouseOver event using multiple target objects. Notice that as the cursor comes over the different spheres, the event is fired. The “Receiver” output value of the node in this case, returns the current object for which the event is fired, or in other words and for this example, the sphere that the cursor is currently over.