
UpdateAttributes()
******************


FUNKTION
========

   void UpdateAttributes()


DEFINIERT IN
============

   /std/living/attributes.c


BESCHREIBUNG
============

   Rechnet damit alle Attributmodifier der im Inventory befindlichen
   (P_X_ATTR_MOD, P_X_HEALTH_MOD) und getragenen/gezueckten
   (P_M_HEALTH_MOD, P_M_ATTR_MOD) Objekte und aller Attributoffsets
   zusammen und speichert sie in einer intern fuer Attribute
   verwendete Variablen.
   Berechnet darauf basierend HP und SP neu.



   Die Bedingungen fuer die ueber P_TIMED_ATTR_MOD gesetzten
   Attributveraenderungen werden im Heartbeat in der Funktion
   attribute_hb ueberprueft.


BEMERKUNGEN
===========

   Sollte nach Einbringen neuer Modifikatorobjekte am Living gerufen
   werden.


SIEHE AUCH
==========

   QueryAttribute(), QueryRealAttribute(), QueryAttributeOffset(),
   SetAttribute(), SetRealAttribute(), UpdateAttributes(),
   SetTimedAttrModifier(), QueryTimedAttrModifier(),
   DeleteTimedAttrModifier(),
   P_ATTRIBUTES, P_ATTRIBUTES_OFFSETS, P_TIMED_ATTR_MOD,
   P_X_ATTR_MOD, P_M_ATTR_MOD, /std/living/attributes.c

09.05.2007 by Zesstra
