GetDetail()¶
FUNKTION¶
varargs string GetDetail(string key, string race, int sense)
DEFINIERT IN¶
/std/thing/description.c
ARGUMENTE¶
key
  Das zu ermittelnde Detail.
race
  Rasse des ermittelnden Objektes (falls es ein Lebewesen ist).
sense
  Die Art des zu untersuchenden Details:
    Untersuchen, Riechen, Hoeren, Tasten.
BESCHREIBUNG¶
Die Beschreibung des gewuenschten Details wird ermittelt. Dabei
werden rassenspezifische Details beruecksichtigt. Es gibt hierbei
verschiedene Detailarten, deren Typ man in <sense> angibt:
  SENSE_VIEW    - Fuer Defaultdetails zum Untersuchen.
  SENSE_SMELL   - Fuer Details, die man riechen kann.
  SENSE_SOUND   - Fuer Details, die man hoeren kann.
  SENSE_TOUCH   - Fuer Details, die man abtasten kann.
  SENSE_READ    - Fuer Details, die man lesen kann.
Dabei ist 0 == SENSE_VIEW.
RUeCKGABEWERT¶
Die Beschreibung des Details oder 0, wenn es dieses Detail nicht
gibt.
HINWEIS¶
Fuer SENSE_VIEW und SENSE_READ wird die Funktion gar nicht erst
aufgerufen, wenn der Spieler nichts sehen kann. Das gleiche gilt fuer
SENSE_SOUND, wenn der Spieler taub ist.
BEISPIEL¶
Im folgenden wird ein kleines Testdetail generiert:
  AddDetail("test","Das ist ein Test!\n");
Im folgenden wird das Detail entfernt, wenn es existiert. Dies ist
eigentlich nicht noetig, da RemoveDetail() damit zurechtkommt, aber
eventuell sind ja noch weitere Aktionen noetig.
  if(GetDetail("test")) {
    RemoveDetail("test");
    ...
  }
Einen Geruch kann man folgendermassen erzeugen:
  AddSmells("gold",
    ([0      :"Gold kann man nicht riechen!\n",
      "zwerg":"Deine trainierte Nase riecht es muehelos!\n"]));
Die Abfrage des Details gestaltet sich recht einfach:
  GetDetail("gold","zwerg",SENSE_SMELL);
Die Funktion liefert das Detail fuer den Zwerg.
  GetDetail("gold",0,SENSE_SMELL);
Die Funktion liefert das Detail fuer die restlichen Rassen.
  GetDetail("gold",0,SENSE_SOUND);
Ein Sounddetail mit dem Namen "gold" existiert nicht, die Funktion
liefert 0 zurueck.
SIEHE AUCH¶
Setzen:    AddDetail(), AddReadDetail(), AddSmells(), AddSounds(),
           AddTouchDetail()
Loeschen:  RemoveReadDetail(), RemoveSmells(), RemoveDetail(),
           RemoveSounds(), RemoveTouchDetail()
Daten:     P_DETAILS, P_READ_DETAILS, P_SMELLS, P_SOUNDS,
           P_TOUCH_DETAILS, P_SPECIAL_DETAILS
Veraltet:  AddSpecialDetail(), RemoveSpecialDetail(), P_READ_MSG
Sonstiges: break_string()
- Jan 2013 Gloinson