blob: 072bdaba54095cab4fc3c7bb851d1f637054ac15 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001
Zesstra953f9972017-02-18 15:37:36 +01002P_REJECT
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_REJECT "reject"
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============
14
15 /sys/properties.h
16
17
18BESCHREIBUNG
19============
20
21 Diese Property zeigt standardmaessig nur in NPCs eine Wirkung. Mit
22 ihr laesst sich sehr einfach einstellen, wie sich ein solcher NPC
23 gegenueber Gegenstaenden verhalten soll, welche ihm zugesteckt
24 werden. Hierbei besteht die Property aus 2 Elementen, welche
25 bestimmt, was der NPC mit Dingen tuen soll, die ihm gegeben werden.
26 Standardmaessig behaelt der NPC die Sachen einfach.
27 Folgende Moeglichkeiten gibt es ausserdem:
28 1. Arrayelement: Art der Handlung. (aus "/sys/moving.h")
29 REJECT_GIVE: Der NPC gibt das Objekt zurueck.
30 REJECT_DROP: Der NPC laesst das Objekt fallen.
31 REJECT_KEEP: Der NPC behaelt das Objekt doch.
32 REJECT_LIGHT_MODIFIER: Der NPC nimmt keine Gegenstaende an, die
33 sein Lichtlevel veraendern und damit Einfluss auf sein
34 Kampfverhalten haben koennten.
35 2. Arrayelement: Meldung, mit welcher der NPC die Handlung
36 kommentiert.
37 Der Meldung wird nichts automatisch vorangestellt und ein
38 abschliessender Zeilenumbruch ist ebenfalls selbstaendig
39 vorzunehmen. Mit einem Leerstring ist somit auch gar keine
40 Rueckmeldung moeglich.
41
42
43BEISPIEL
44========
45
46 Der NPC schmeisst alle ihm gegebenen Gegenstaende einfach weg:
47 void create()
48 { ::create();
49 ...
50 SetProp(P_REJECT,({REJECT_GIVE,
51 Name(WER)+" murmelt: Was soll ich denn damit?!\n"}));
52 ...
53 }
54 Manchmal ist das recht nuetzlich, z.B. kann man so eigentlich schwer
55 zu toetende NPCs dagegen schuetzen, dass man ihnen angezuendetes
56 Dynamit oder aehnliches ueberreicht.
57
58
59BEMERKUNGEN
60===========
61
62 Innerhalb von NPCs ist die Funktion give_notify() fuer die
63 automatische Auswertung dieser Property verantwortlich; das sollte
64 man insbesondere beim Ueberschreiben dieser Funktion beachten!
65
66
67SIEHE AUCH
68==========
69
70 give_notify(), /std/npc/put_and_get.c
71
MG Mud User88f12472016-06-24 23:31:02 +020072Last modified: Mon Apr 23 16:54:07 2001 by Patryn