P_REJECT

NAME

P_REJECT                        "reject"

DEFINIERT IN

/sys/properties.h

BESCHREIBUNG

Diese Property zeigt standardmaessig nur in NPCs eine Wirkung. Mit
ihr laesst sich sehr einfach einstellen, wie sich ein solcher NPC
gegenueber Gegenstaenden verhalten soll, welche ihm zugesteckt
werden. Hierbei besteht die Property aus 2 Elementen, welche
bestimmt, was der NPC mit Dingen tuen soll, die ihm gegeben werden.
Standardmaessig behaelt der NPC die Sachen einfach.
Folgende Moeglichkeiten gibt es ausserdem:
  1. Arrayelement: Art der Handlung. (aus "/sys/moving.h")
    REJECT_GIVE: Der NPC gibt das Objekt zurueck.
    REJECT_DROP: Der NPC laesst das Objekt fallen.
    REJECT_KEEP: Der NPC behaelt das Objekt doch.
    REJECT_LIGHT_MODIFIER: Der NPC nimmt keine Gegenstaende an, die
      sein Lichtlevel veraendern und damit Einfluss auf sein
      Kampfverhalten haben koennten.
  2. Arrayelement: Meldung, mit welcher der NPC die Handlung
                   kommentiert.
    Der Meldung wird nichts automatisch vorangestellt und ein
    abschliessender Zeilenumbruch ist ebenfalls selbstaendig
    vorzunehmen. Mit einem Leerstring ist somit auch gar keine
    Rueckmeldung moeglich.

BEISPIEL

Der NPC schmeisst alle ihm gegebenen Gegenstaende einfach weg:
  void create()
  { ::create();
    ...
    SetProp(P_REJECT,({REJECT_GIVE,
    Name(WER)+" murmelt: Was soll ich denn damit?!\n"}));
    ...
  }
Manchmal ist das recht nuetzlich, z.B. kann man so eigentlich schwer
zu toetende NPCs dagegen schuetzen, dass man ihnen angezuendetes
Dynamit oder aehnliches ueberreicht.

BEMERKUNGEN

Innerhalb von NPCs ist die Funktion give_notify() fuer die
automatische Auswertung dieser Property verantwortlich; das sollte
man insbesondere beim Ueberschreiben dieser Funktion beachten!

SIEHE AUCH

give_notify(), /std/npc/put_and_get.c

Last modified: Mon Apr 23 16:54:07 2001 by Patryn