AddSingularId()
***************


FUNKTION
========

   void AddSingularId(mixed id);


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

   /std/unit.c


ARGUMENTE
=========

   id
        Identifikationsstring oder Array von Strings


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

   Es werden ein oder mehrere Bezeichner hinzugefuegt, mit denen sich eine
   einzelne Einheit ansprechen laesst.


RUeCKGABEWERT
=============

   keiner


BEISPIELE
=========

   siehe /items/money.c


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

   AddPluralId(), RemoveSingularId(), AddId(), id(), /std/unit.c

Last modified: Mon Jul 14 11:31:00 1997 by Silvana
