
RemoveId()
**********


FUNKTION
========

   void RemoveId(string|string* ids);


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

   /std/thing/description.c


ARGUMENTE
=========

   ids
        String oder Array von Strings mit den Bezeichnungen, die aus der
        Liste der IDs des Objektes entfernt werden sollen.


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

   Wenn ein Objekt sich nicht mehr mit gewissen Bezeichnern ansprechen
   lassen soll, kann man diese mit dieser Funktion entfernen.


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

   keiner


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

   AddId(), RemoveAdjective(), /std/thing/description.c

20.01.2015, Zesstra
