
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
