
P_UNWIELD_MSG
*************


NAME
====

   P_UNWIELD_MSG                       "unwield_msg"


DEFINIERT IN
============

   /sys/weapon.h


BESCHREIBUNG
============

   Zweiteiliges Array mit Meldungen, die beim Wegstecken einer
   Waffe an den Spieler und die Umgebung ausgegeben werden.

   Der erste Eintrag geht an den Spieler, der zweite Eintrag an die
   Umgebung.  Zeilenumbrueche werden automatisch gemacht, existierende
   jedoch beruecksichtigt.

   Platzhalter fuer Spieler ist @WExxx1, fuer die Waffe @WExxx2 (siehe
   man replace_personal()).

   [Wegen Abwaertskompatibilitaet ist auch noch der Platzhalter %s
    moeglich, wobei in der eigenen Meldung %s fuer den Waffennamen steht,
    in der an den Raum das erste %s fuer den Spielernamen, das zweite fuer
    den Waffennamen.]


BEISPIELE
=========

   SetProp(P_NAME, "Streitkolben");
   SetProp(P_UNWIELD_MSG,
    ({ "Du steckst @WEN2 zurueck und atmest erstmal tief durch.",
       "@WER1 steckt @WENU2 zurueck und atmet erstmal tief durch." }));

   -> beim Wegstecken durch Urk:
      Urk bekommt: Du steckst den Streitkolben zurueck und atmest erstmal
                   tief durch.
      Der Raum:    Urk steckt einen Streitkolben zurueck und atmet erstmal
                   tief durch.

   SetProp(P_UNWIELD_MSG,
    ({"Du steckst die schwere Keule zurueck. Zufaellig landet sie "
      "dabei auf Deinem Fuss. Laut schreiend humpelst Du in der "
      "Gegend herum.",
      "@WER1 steckt eine schwere Keule zurueck. Dummerweise landet diese "
      "direkt auf dem eigenen Fuss. Aua, das tat sicher weh ... nicht "
      "umsonst humpelt @WERQP1 jetzt schreiend durch die Gegend."}));

   -> beim Wegstecken durch Urk:
      Urk bekommt: Du steckst die schwere Keule zurueck. Zufaellig landet
                   sie dabei auf Deinem Fuss. Laut schreiend humpelst Du in
                   der Gegend herum.
      Der Raum:    Urk steckt eine schwere Keule zurueck. Dummerweise
                   landet diese direkt auf dem eigenen Fuss. Aua, das tat
                   sicher weh ... nicht umsonst humpelt er jetzt schreiend
                   durch die Gegend.


SIEHE AUCH
==========

   Aehnliches: P_WIELD_MSG, P_WEAR_MSG, P_UNWEAR_MSG
               P_DROP_MSG, P_PUT_MSG, P_GIVE_MSG, P_PICK_MSG
   Funktionen: UnwieldFunc, WieldFunc
   Sonstiges:  replace_personal(E), /std/weapon/combat.c

29. Maerz 2004 Gloinson
