P_PICK_MSG
NAME:
     P_PICK_MSG				"pick_message"

DEFINIERT IN:
     /sys/living/put_and_get.h

BESCHREIBUNG:
     Mit P_PICK_MSG kann man die Meldung, die man beim Aufnehmen eines
     Objektes bekommt, modifizieren.

     Folgende Werte sind moeglich:

     o 0
       Es wird eine Standardmeldung ausgegeben. Dies ist Voreinstellung.

     o NO_PNG_MSG       == -1
       Es wird keinerlei Meldung ausgegeben

     o Ein Array aus Strings
       Der erste String wird an den Spieler ausgegeben, der zweite
       (optionale) an den Raum.

       Die Strings werden durch die Funktion replace_personal() geparst.
	Objekt1 - Spieler
        Objekt2 - das Objekt, das genommen wird

       Wird der zweite String nicht angegeben, erfolgt keine Meldung an den
       Raum.

BEISPIEL:
     void create() {
      ...
      SetProp( P_SHORT, "Etwas Sand" );
      SetProp( P_LONG, break_string(
       "Ein wenig magischer Sand. Sehr feinkruemelig.",78 ));

      SetProp( P_NAME, "Sand" );
      AddId( ({"sand"}) );
      SetProp( P_GENDER, MALE );

      SetProp( P_PICK_MSG, ({
       "Du schaufelst @WEN2 in deine Hand.",
       "@WER1 schaufelt @WEN2 in eine Hand."}));
      ...
     }

     Das ganze fuehrt bei Ugars "nimm sand" zu folgenden
     Meldungen:

     Ugar: "Du schaufelst den Sand in deine Hand."
     Raum: "Ugar schaufelt den Sand in eine Hand."

SIEHE AUCH:
     Aehnliches: P_DROP_MSG, P_PUT_MSG, P_GIVE_MSG, P_WEAR_MSG, P_WIELD_MSG
     Fehler:     P_TOO_HEAVY_MSG, P_ENV_TOO_HEAVY_MSG, P_TOO_MANY_MSG,
                 P_NOINSERT_MSG, P_NOLEAVE_MSG, P_NODROP, P_NOGET 
     Sonstiges:  replace_personal(E), pick_obj(L), /std/living/put_and_get.c

14. Maerz 2004 Gloinson
