blob: 099e5920b50b0c2270231017e110bcc0ff2a2758 [file] [log] [blame]
P_PRE_INFO
**********
NAME
====
P_PRE_INFO "npc_pre_info"
DEFINIERT IN
============
/sys/npc.h
BESCHREIBUNG
============
Ist die Property in einem NPC definiert, so wird ihr Ergebnis
ausgewertet, bevor eine Frage an das Infosystem uebergeben wird.
Moegliche Werte:
- numerischer Wert ungleich 0
=> der NPC gibt _keinerlei_ Antwort, die Frage fuehrt sozusagen
ins Leere
- Stringwert
=> wird als Rueckgabe an den Fragenden ausgegeben, umstehende
Personen bekommen den Text:
"XY ist nicht gewillt, Spieler YZ zu antworten".
Der Fragende selbst bekommt bei angegebenem Stringwert:
"XY " + Stringwert.
- Closure
=> die Antwort bzw. Reaktion des NPCs obliegt ganz der
angegebenen Closure. Diese muss dabei einen String oder
Ganzzahlen-Wert zurueckgeben
BEISPIEL
========
Ein NPC der manchmal herumrennt, um z.B. eine Aufgabe zu verrichten,
koennte so lange Chats abschalten, z.B.
SetProp(P_CHAT_CHANCE,0); // NPC latscht los
Und eine Weile spaeter:
SetProp(P_CHAT_CHANCE,5); // NPC ruht wieder, quasselt rum
Waehrend des Herumlaufens, also wenn er nicht automatisch schwatzt,
soll er auch keinerlei Fragen beantworten:
Set(P_PRE_INFO, function mixed () {
return (QueryProp(P_CHAT_CHANCE) ? 0 :
"hat gerade keine Zeit fuer Dich.");
}, F_QUERY_METHOD);
HINWEISE
========
Bitte beachten, dass der interne Name der Property "npc_pre_info"
ist und somit nur das Ueberschreiben von _query_npc_pre_info()
funktioniert.
SIEHE AUCH
==========
AddInfo(), /std/npc/info.c
Last modified: 01.03.2016 by Arathorn