AddAdjective()

FUNKTION:
     void AddAdjective(string|string* adj);

DEFINIERT IN:
     /std/thing/description.c

ARGUMENTE:
     adj
          String oder Array von String mit den Adjektiven.

BESCHREIBUNG:
     Zusaetzlich zu den mit AddId() vergebenen Bezeichnern laesst sich mit
     der Vergabe von Adjektiven die Ansprechbarkeit eines Objektes erhoehen.

RUeCKGABEWERT:
     keiner

BEMERKUNGEN:
     Die Adjektive werden nicht dekliniert, man muss also fuer jeden
     sinnvollen Fall ein Adjektiv uebergeben.

BEISPIELE:

       AddId( ({ "zettel", "blatt" }) );
       AddAdjective( ({ "kleinen", "kleines" }) );

     Das Objekt reagiert jetzt auf "zettel", "kleinen zettel", "blatt",
     "kleines blatt" sowie auf die (sprachlich nicht ganz so korrekten)
     Konstruktionen "kleines zettel", "kleinen blatt", "kleines kleinen
     zettel", ...

SIEHE AUCH:
     AddId(), RemoveAdjective() id(), present(), /std/thing/description.c

----------------------------------------------------------------------------
20.01.2015, Zesstra

