
doUnwieldMessage()
******************


FUNKTION
========

   void doUnwieldMessage(object wielded_by);


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

   /std/weapon/combat.c


ARGUMENTE
=========

   wielded_by
     Das Lebewesen, dass die (Parier)Waffe bisher gezueckt hatte.


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

   Diese Funktion gibt beim Wegstecken einer Waffe die entspr.
   Meldung an den Benutzer und die Umgebung aus.


RUeCKGABEWERT
=============

   keiner


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

   doWearMessage(), doUnwearMessage(), doWieldMessage()

Last modified: Sat Jun 26 15:32:00 1999 by Paracelsus
