blob: 76f7b5ae9b7fb734035f44622be1c5d00228ebb5 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001RemoveDetail()
Zesstra953f9972017-02-18 15:37:36 +01002**************
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005FUNKTION
6========
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 void RemoveDetail(mixed *keys);
MG Mud User88f12472016-06-24 23:31:02 +02009
MG Mud User88f12472016-06-24 23:31:02 +020010
Zesstra953f9972017-02-18 15:37:36 +010011DEFINIERT IN
12============
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstra953f9972017-02-18 15:37:36 +010014 /std/thing/description.c
MG Mud User88f12472016-06-24 23:31:02 +020015
MG Mud User88f12472016-06-24 23:31:02 +020016
Zesstra953f9972017-02-18 15:37:36 +010017ARGUMENTE
18=========
MG Mud User88f12472016-06-24 23:31:02 +020019
Zesstra953f9972017-02-18 15:37:36 +010020 keys
21 String oder Array von Strings mit den zu entfernenden Details.
22
23
24BESCHREIBUNG
25============
26
27 Entfernt die in <keys> angegebenen Details aus der Liste der
28 vorhandenen Details. Uebergibt man fuer <keys> eine 0, so werden
29 saemtliche Details entfernt!
30
31
32BEISPIEL
33========
34
35 Ein kleines Beispiel, bei dem eine Oeffnung erscheint und wieder
36 verschwindet, je nachdem, ob man eine Luke oeffnet oder schliesst.
37 int oeffneLuke(string str);
38 int schliesseLuke(string str);
39 ...
40 AddCmd("oeffne", #'oeffneLuke);
41 AddCmd("schliesse", #'schliesseLuke);
42 ...
43 int oeffneLuke(string str) {
44 if(str!="luke" || GetDetail("oeffnung"))
45 return 0;
46 AddDetail("oeffnung","Du siehst eine kleine Oeffnung.\n");
47 return 1;
48 }
49
50 int schliesseLuke(string str) {
51 if(str!="luke" || !GetDetail("oeffnung"))
52 return 0;
53 RemoveDetail("oeffnung"); // Detail wieder entfernen
54 return 1;
55 }
56
57
58BEMERKUNGEN
59===========
60
61 Da intern Details und SpecialDetails im gleichen Mapping verwaltet
62 werden, lassen sich mit dieser Funktion auch SpecialDetails
63 entfernen.
64 Die Funktion RemoveSpecialDetail() sollte also nicht genutzt werden!
65
66
67SIEHE AUCH
68==========
69
70 Setzen: AddDetail(), AddReadDetail(), AddSmells(), AddSounds(),
71 AddTouchDetail()
72 Loeschen: RemoveReadDetail(), RemoveSmells(),
73 RemoveSounds(), RemoveTouchDetail()
74 Daten: P_DETAILS, P_READ_DETAILS, P_SMELLS, P_SOUNDS,
75 P_TOUCH_DETAILS, P_SPECIAL_DETAILS
76 Veraltet: AddSpecialDetail(), RemoveSpecialDetail(), P_READ_MSG
77 Sonstiges: GetDetail(), break_string()
78
798. Juli 2011 Gloinson