blob: acfd46335389d01070f7c93c5f0ae7b72d17da2b [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001P_PRE_INFO
2**********
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005NAME
6====
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 P_PRE_INFO "npc_pre_info"
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 /sys/npc.h
MG Mud User88f12472016-06-24 23:31:02 +020015
MG Mud User88f12472016-06-24 23:31:02 +020016
Zesstra953f9972017-02-18 15:37:36 +010017BESCHREIBUNG
18============
19
20 Ist die Property in einem NPC definiert, so wird ihr Ergebnis
21 ausgewertet, bevor eine Frage an das Infosystem uebergeben wird.
22
Zesstra953f9972017-02-18 15:37:36 +010023 Moegliche Werte:
Arathorn78eab1b2019-11-26 19:24:18 +010024 - numerischer Wert > 0
25 => der NPC gibt keinerlei Antwort, die Frage fuehrt sozusagen
Zesstra953f9972017-02-18 15:37:36 +010026 ins Leere
27
28 - Stringwert
29 => wird als Rueckgabe an den Fragenden ausgegeben, umstehende
30 Personen bekommen den Text:
31 "XY ist nicht gewillt, Spieler YZ zu antworten".
32 Der Fragende selbst bekommt bei angegebenem Stringwert:
33 "XY " + Stringwert.
34
Arathorn78eab1b2019-11-26 19:24:18 +010035 - Wenn eine als Querymethode gesetzte Closure einen String oder
36 einen Integer > 0 zurueckgibt, sind die Auswirkungen identisch
37 zu den beiden oben beschriebenen Faellen. Siehe auch Beispiel
38 unten.
Zesstra953f9972017-02-18 15:37:36 +010039
40
41BEISPIEL
42========
43
44 Ein NPC der manchmal herumrennt, um z.B. eine Aufgabe zu verrichten,
45 koennte so lange Chats abschalten, z.B.
46
47 SetProp(P_CHAT_CHANCE,0); // NPC latscht los
48
Zesstra953f9972017-02-18 15:37:36 +010049 Und eine Weile spaeter:
50
Zesstra953f9972017-02-18 15:37:36 +010051 SetProp(P_CHAT_CHANCE,5); // NPC ruht wieder, quasselt rum
52
Zesstra953f9972017-02-18 15:37:36 +010053 Waehrend des Herumlaufens, also wenn er nicht automatisch schwatzt,
54 soll er auch keinerlei Fragen beantworten:
55
Arathorn78eab1b2019-11-26 19:24:18 +010056 Set(P_PRE_INFO, function string () {
Zesstra953f9972017-02-18 15:37:36 +010057 return (QueryProp(P_CHAT_CHANCE) ? 0 :
58 "hat gerade keine Zeit fuer Dich.");
59 }, F_QUERY_METHOD);
60
61
62HINWEISE
63========
64
65 Bitte beachten, dass der interne Name der Property "npc_pre_info"
66 ist und somit nur das Ueberschreiben von _query_npc_pre_info()
67 funktioniert.
68
69
70SIEHE AUCH
71==========
72
73 AddInfo(), /std/npc/info.c
74
Arathorn78eab1b2019-11-26 19:24:18 +010075Last modified: 2019-Okt-16 by Arathorn