register_modifier()
FUNKTION:
     void register_modifier(object modifier)

DEFINIERT IN:
     /std/living/attributes.c

PARAMETER:
     modifier	- Objekt mit P_X_ATTR_MOD oder P_M_ATTR_MOD

BESCHREIBUNG:
     Registriert einen Modifier im Spieler. Wird durch InsertSensitiveObject
     beziehungsweise beim Anziehen oder Zuecken gerufen.
     Muss nicht direkt gerufen werden. Bei Veraenderungen von Modifikatoren
     sollte stattdessen UpdateAttributes gerufen werden.     

SIEHE AUCH:
     QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
     SetAttr(), SetAttribute(), SetRealAttribute(), UpdateAttributes(),
     deregister_modifier(), P_ATTRIBUTES, P_ATTRIBUTES_OFFSETS, 
     P_ATTRIBUTES_MODIFIER,P_X_ATTR_MOD, P_M_ATTR_MOD, 
     /std/living/attributes.c

13.Jun.2004, Muadib