QueryRealAttribute()
********************


FUNKTION
========

   int QueryRealAttribute(string attr)


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

   /std/living/attributes.c


ARGUMENTE
=========

   attr       -       das interessierende Attribut


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

   Das reale Attribut (ohne Offsets) wird zurueckgegeben.


BEISPIELE
=========

   if(this_player()->QueryRealAttribute(A_INT)>15)
    write("Du bist auch so ganz schoen clever.\n");


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

Last modified: Tue Jul 27 20:00:20 2004 by Muadib
