blob: 695ccea0841e8840687fe7b593935208de6c599c [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001show_notify()
2*************
3
Arathornae6dbc92020-07-27 23:36:15 +02004show_notify()
MG Mud User88f12472016-06-24 23:31:02 +02005
MG Mud User88f12472016-06-24 23:31:02 +02006
Zesstra953f9972017-02-18 15:37:36 +01007FUNKTION
8========
MG Mud User88f12472016-06-24 23:31:02 +02009
Zesstra953f9972017-02-18 15:37:36 +010010 void show_notify(object obj)
MG Mud User88f12472016-06-24 23:31:02 +020011
MG Mud User88f12472016-06-24 23:31:02 +020012
Zesstra953f9972017-02-18 15:37:36 +010013DEFINIERT IN
14============
MG Mud User88f12472016-06-24 23:31:02 +020015
Arathorn4575fbe2021-02-28 14:44:30 +010016 beliebigen Objekten
MG Mud User88f12472016-06-24 23:31:02 +020017
MG Mud User88f12472016-06-24 23:31:02 +020018
Zesstra953f9972017-02-18 15:37:36 +010019ARGUMENTE
20=========
MG Mud User88f12472016-06-24 23:31:02 +020021
Zesstra953f9972017-02-18 15:37:36 +010022 obj - dem Lebewesen gezeigtes Objekt
23
24
25RUeCKGABEWERT
26=============
27
28 keiner
29
30
31BESCHREIBUNG
32============
33
34 Diese Funktion wird automatisch immer dann aufgerufen, wenn einem
35 Lebewesen (welches kein Spielercharakter ist) ein Objekt gezeigt wird.
Arathorn4575fbe2021-02-28 14:44:30 +010036 Will das Lebewesen auf so etwas reagieren, ist das Implementieren dieser
37 Funktion der einfachste Weg.
38
Zesstra953f9972017-02-18 15:37:36 +010039 Dies funktioniert nur dann, wenn der Standardbefehl der Spielershell
40 verwendet wird ("zeige <name> <gegenstand>"). Selbstgebautes "zeige"
41 funktioniert nicht.
42
43
44BEISPIEL
45========
46
47 Oftmals will man in Quests erreichen, dass einem NPC ein bestimmtes
48 Item als Beweis der Erfuellung einer bestimmten Aufgabe vorgezeigt
49 wird. Folgendermassen kann dies realisiert werden:
50
51 void quest_ok(object obj) { ...
52 // z.B. Vernichtung des Questobjektes und Questtexte
53 // Questbelohnung und Questanerkennung, etc.
54 }
55
56 void show_notify(object obj) {
57 if(obj->id("\nquestitem")) // Ist das das geforderte Questobjekt?
58 quest_ok(obj);
59 }
60
61
62BEMERKUNGEN
63===========
64
65 Da es nur um das Vorzeigen von Gegenstaenden geht, die nicht den
66 Besitzer wechseln, sind Mechanismen wie P_REJECT in diesem Fall
67 nicht erforderlich.
68
69
70SIEHE AUCH
71==========
72
73 give_notify(), /std/npc/put_and_get.c, /std/living/put_and_get.c
MG Mud User88f12472016-06-24 23:31:02 +020074
Arathorn4575fbe2021-02-28 14:44:30 +01007504.02.2020 Zesstra