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