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