ID:80608
 
Triggers Library

This library provides a new object type called a trigger, which can be used to cause reactions in other objects in the world through the use of tags. For example, a lever is a trigger object, and when pulled, the lever opens the gate object with the appropriate tag. There are a variety of different trigger setups you can create to influence objects in your game.

Triggers work through activation and deactivation, or toggling. You can activate a trigger directly, such as when a player steps on a trigger object, using the Activate(object) proc, where the object argument is the object the activated it. You can also deactivate it directly using the Deactivate(object) proc. Or, if you're not sure whether you want to activate or deactivate it, such as in the case of using a lever, you can use the Toggle(object) proc, which will activate or deactivate it depending on its settings.

When a trigger is activated, it will add to a targeted object's triggers_set variable, and the amount added is dependent on the trigger's trigger_weight value. When the triggered object's triggers_set value equals its triggers_req (triggers required) value, then the object is activated, such as a gate's opening. When the object's triggers_set value no longer matches its triggers_req value, it will deactivate, such as a gate closing.

You specify which objects a trigger will affect through the trigger's trigger_target var. This variable is a params list of the tags for the trigger to locate. So in order to affect an object, you need to set the object's tag value, and set the trigger's target value to include the object's tag value.
Nice library, an easier to use version of Kuraudo's Slots and Signals.
We had a discussion on the differences when Kuraudo released his library:
http://www.byond.com/developer/forum/?id=710167