Enhanced Trigger Box is a highly customisable trigger box that allows developers to create events that are triggered when an object enters a specified area.
Full Documentation
Please note that the Demo and Examples scenes in this asset require the Unity Standard Assets (specifically the FPSController) to be imported and are not supported in anything lower than Unity 5.4. However the script itself will work with Unity 5.0 and above. If you do not wish to view the demos, do not want to import the standard assets or are using anything under Unity 5.4 you should NOT import the demos folder. Just import the scripts folder and you can add the script to a GameObject and get going from there.
The Enhanced Trigger Box allows developers to setup various responses to be executed when an object enters a specified area. You can also setup conditions that must be met before the responses get executed such as camera conditions where for example a player mustn't be looking at a specific object. Or player pref conditions such as progress through a level.
Responses are executed after all conditions have been met. These range from spawning GameObjects or disabling components to playing animations or altering material properties.
It has been designed in a way that allows you to easily extend the Enhanced Trigger Box yourself by creating more responses or conditions.
How does it all work? At the top level you have the Enhanced Trigger Box script. It has some base options and uses a box collider to represent the boundaries of the Enhanced Trigger Box. Beneath that you have Enhanced Trigger Box Components which are MonoBehaviours that you are able to add to the Enhanced Trigger Box. These come in the form of either a Condition or a Response and are located in the Scripts/TriggerBoxComponents folder.
When a Enhanced Trigger Box gets triggered, all the conditions get checked to see if each condition has been met. If all the conditions have been met, all the responses get executed.
New conditions and responses are in development and it's very easy for you to add your own. To learn how to add your own conditions or responses or to see the existing ones in detail follow the documentation link at the top of this text.