VERALTET: RemoveSpecialDetail()

FUNKTION:
    void RemoveSpecialDetail(string|string* keys);

DEFINIERT IN:
    /std/thing/description.c

ARGUMENTE:
    keys
      String oder Array von Strings mit den zu entfernenden Details.

BESCHREIBUNG:
    Entfernt die in keys angegebenen Details aus der Liste der
    vorhandenen SpecialDetails.

    VERALTET: Bitte RemoveDetail() benutzen.

BEMERKUNGEN:
    Uebergibt man fuer keys eine 0, so werden saemtliche SpecialDetails
    entfernt!
    Da intern Details und SpecialDetails im gleichen Mapping verwaltet
    werden, lassen sich mit dieser Funktion auch Details entfernen.
    Man sollte diese Funktion deshalb nicht mehr verwenden, siehe
    AddDetail mit Closures.

SIEHE AUCH:
    Setzen :   AddDetail(), AddReadDetail(), AddSmells(), AddSounds(),
               AddTouchDetail()
    Loeschen:  RemoveDetail(), RemoveReadDetail(), RemoveSmells(),
               RemoveSounds(), RemoveTouchDetail()
    Daten:     P_DETAILS, P_READ_DETAILS, P_SMELLS, P_SOUNDS, P_TOUCH_DETAILS
    Veraltet:  AddSpecialDetail(), P_READ_MSG
    Sonstiges: GetDetail(), break_string()

20.01.2015, Zesstra

