blob: 4a2bd71050b3c91f55f6b4caa200a2f37dd33b82 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002GetDetail()
Zesstra953f9972017-02-18 15:37:36 +01003***********
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 varargs string GetDetail(string key, string race, int sense)
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012DEFINIERT IN
13============
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 /std/thing/description.c
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018ARGUMENTE
19=========
20
21 key
22 Das zu ermittelnde Detail.
23 race
24 Rasse des ermittelnden Objektes (falls es ein Lebewesen ist).
25 sense
26 Die Art des zu untersuchenden Details:
27 Untersuchen, Riechen, Hoeren, Tasten.
28
29
30BESCHREIBUNG
31============
32
33 Die Beschreibung des gewuenschten Details wird ermittelt. Dabei
34 werden rassenspezifische Details beruecksichtigt. Es gibt hierbei
35 verschiedene Detailarten, deren Typ man in <sense> angibt:
36 SENSE_VIEW - Fuer Defaultdetails zum Untersuchen.
37 SENSE_SMELL - Fuer Details, die man riechen kann.
38 SENSE_SOUND - Fuer Details, die man hoeren kann.
39 SENSE_TOUCH - Fuer Details, die man abtasten kann.
40 SENSE_READ - Fuer Details, die man lesen kann.
41
42 Dabei ist 0 == SENSE_VIEW.
43
44
45RUeCKGABEWERT
46=============
47
48 Die Beschreibung des Details oder 0, wenn es dieses Detail nicht
49 gibt.
50
51
Arathorn4575fbe2021-02-28 14:44:30 +010052HINWEIS
53=======
54
55 Fuer SENSE_VIEW und SENSE_READ wird die Funktion gar nicht erst
56 aufgerufen, wenn der Spieler nichts sehen kann. Das gleiche gilt fuer
57 SENSE_SOUND, wenn der Spieler taub ist.
58
59
Zesstra953f9972017-02-18 15:37:36 +010060BEISPIEL
61========
62
63 Im folgenden wird ein kleines Testdetail generiert:
64 AddDetail("test","Das ist ein Test!\n");
Arathorn4575fbe2021-02-28 14:44:30 +010065
Zesstra953f9972017-02-18 15:37:36 +010066 Im folgenden wird das Detail entfernt, wenn es existiert. Dies ist
67 eigentlich nicht noetig, da RemoveDetail() damit zurechtkommt, aber
68 eventuell sind ja noch weitere Aktionen noetig.
Arathorn4575fbe2021-02-28 14:44:30 +010069 if(GetDetail("test")) {
70 RemoveDetail("test");
Zesstra953f9972017-02-18 15:37:36 +010071 ...
72 }
Arathorn4575fbe2021-02-28 14:44:30 +010073
74 Einen Geruch kann man folgendermassen erzeugen:
Zesstra953f9972017-02-18 15:37:36 +010075 AddSmells("gold",
76 ([0 :"Gold kann man nicht riechen!\n",
77 "zwerg":"Deine trainierte Nase riecht es muehelos!\n"]));
78 Die Abfrage des Details gestaltet sich recht einfach:
79 GetDetail("gold","zwerg",SENSE_SMELL);
80 Die Funktion liefert das Detail fuer den Zwerg.
81 GetDetail("gold",0,SENSE_SMELL);
82 Die Funktion liefert das Detail fuer die restlichen Rassen.
83 GetDetail("gold",0,SENSE_SOUND);
84 Ein Sounddetail mit dem Namen "gold" existiert nicht, die Funktion
85 liefert 0 zurueck.
86
87
88SIEHE AUCH
89==========
90
91 Setzen: AddDetail(), AddReadDetail(), AddSmells(), AddSounds(),
92 AddTouchDetail()
93 Loeschen: RemoveReadDetail(), RemoveSmells(), RemoveDetail(),
94 RemoveSounds(), RemoveTouchDetail()
95 Daten: P_DETAILS, P_READ_DETAILS, P_SMELLS, P_SOUNDS,
96 P_TOUCH_DETAILS, P_SPECIAL_DETAILS
97 Veraltet: AddSpecialDetail(), RemoveSpecialDetail(), P_READ_MSG
98 Sonstiges: break_string()
MG Mud User88f12472016-06-24 23:31:02 +020099
10027. Jan 2013 Gloinson