blob: 9efed27374d82bb832280aeee8f45d07922e878d [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001P_PRE_INFO
2==========
3
4NAME
5----
6::
7
8 P_PRE_INFO "npc_pre_info"
9
10DEFINIERT IN
11------------
12::
13
14 /sys/npc.h
15
16BESCHREIBUNG
17------------
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
23
24
25 Moegliche Werte:
26 - numerischer Wert ungleich 0
27 => der NPC gibt _keinerlei_ Antwort, die Frage fuehrt sozusagen
28 ins Leere
29
30 - Stringwert
31 => wird als Rueckgabe an den Fragenden ausgegeben, umstehende
32 Personen bekommen den Text:
33 "XY ist nicht gewillt, Spieler YZ zu antworten".
34 Der Fragende selbst bekommt bei angegebenem Stringwert:
35 "XY " + Stringwert.
36
37 - Closure
38 => die Antwort bzw. Reaktion des NPCs obliegt ganz der
39 angegebenen Closure. Diese muss dabei einen String oder
40 Ganzzahlen-Wert zurueckgeben
41
42BEISPIEL
43--------
44::
45
46 Ein NPC der manchmal herumrennt, um z.B. eine Aufgabe zu verrichten,
47 koennte so lange Chats abschalten, z.B.
48
49 SetProp(P_CHAT_CHANCE,0); // NPC latscht los
50
51
52
53 Und eine Weile spaeter:
54
55
56
57 SetProp(P_CHAT_CHANCE,5); // NPC ruht wieder, quasselt rum
58
59
60
61 Waehrend des Herumlaufens, also wenn er nicht automatisch schwatzt,
62 soll er auch keinerlei Fragen beantworten:
63
64
65
66 Set(P_PRE_INFO, function mixed () {
67 return (QueryProp(P_CHAT_CHANCE) ? 0 :
68 "hat gerade keine Zeit fuer Dich.");
69 }, F_QUERY_METHOD);
70
71HINWEISE
72--------
73::
74
75 Bitte beachten, dass der interne Name der Property "npc_pre_info"
76 ist und somit nur das Ueberschreiben von _query_npc_pre_info()
77 funktioniert.
78
79SIEHE AUCH
80----------
81::
82
83 AddInfo(), /std/npc/info.c
84
85
86Last modified: 01.03.2016 by Arathorn
87