A trigger is made up of two parts:
For instance, a player crossing a line is an event (player_cross) that could trigger an XG line. XG lines can be triggered by numerous different events (see below). It is also possible to assign multiple trigger events to an XG line and freely mix n' match activation/deactivation trigger events.
An example would be a switch that can be activated when shot as well as when the player “uses” it. Once triggered, a line's class might be executed depending on the line's “event type” (see below), the current “state” of the line (ie active/inactive) and the activation requirements.
In order to function correctly an XG line definition MUST specify at least one trigger event and one function type. However, there is an exception to this rule. If no trigger events are defined then the line's class can ONLY be triggered remotely (eg by a line using the Chain Sequence).
The flags listed below are used to define the type of events that can activate and deactivate a line. Combining the flags is allowed so lines can be activated or deactivated by several kinds of events. The line can also be set to be activated with one type of event and deactivated with another one.
There are two versions of each flag, suffixed _a and _d. Using the former activates the line (providing it's inactive) when the event in question occurs. The latter does the opposite. A flag with no suffix contains both the _a and _d versions (in other words that event can activate and deactivate the line).
To set the trigger event(s) and initial state within an Line Class definition use Flags e.g.:
Flags = player_use_a | active
The line is initially active. If this flag is not set, the line is inactive after the map has been loaded.