P_HANDS
NAME:
     P_HANDS                    "hands"

DEFINIERT IN:
     /sys/living/combat.h

BESCHREIBUNG:
     Diese Property enthaelt ein dreielementiges Array mit
     den folgenden Eintraegen:
     1. Element: String mit der Meldung, wenn ohne Waffen angegriffen
                 wird.
     2. Element: Waffenklasse, wenn ohne Waffen angegriffen wird.
     3. Element: Array mit Schadensarten (frueher auch: Schadensart)

     eim Setzen dieser Property wird auch P_TOTAL_WC mit veraendert,
     wenn das Lebewesen keine Waffe gezueckt hat. Steckt das Lebewesen
     eine gezueckte Waffe weg, so wird ebenfalls P_TOTAL_WC mit der
     Waffenklasse aus P_HANDS aktualisiert. Zueckt das Lebewesen eine
     Waffe, so wird P_TOTAL_WC mit der Waffenklasse der Waffe (P_WC)
     ueberschrieben. Die Property P_TOTAL_WC enthaelt somit immer die
     aktuelle Angriffsstaerke des Lebewesen.

BEMERKUNGEN
     In alten Objekten kann es vorkommen, dass das dritte Element (Angabe des
     Schadenstyps) fehlt. Dies ist eine Altlast, die Angabe des Schadenstypes
     ist NICHT optional.)

BEISPIEL:
     Ein starker Tausendfuessler mit Schlagschaden:

       SetProp(P_HANDS,({" mit tausend kleinen Fuesschen",1000, 
                         ({DT_BLUDGEON}) }));


     Ein Saeurededaemon:
       SetProp(P_HANDS,
         ({
           " mit saeuretriefenden Klauen",
           250,
           ({DT_RIP, DT_ACID})
         })
       );

     Hier wurden gleich zwei Schadensarten angegeben, also wird
     Mischschaden verursacht. Man sollte es jedoch nicht zu sehr
     uebertreiben! Mehr als zwei oder drei gleichzeitig verwendete
     Schadensarten lassen sich kaum mehr begruenden.

SIEHE AUCH:
     P_HANDS_USED_BY
     P_MAX_HANDS, P_USED_HANDS, P_FREE_HANDS
     UseHands, FreeHands
     P_TOTAL_WC, P_WC
     /std/living/combat.c, /std/weapon/combat.c, /sys/combat.h

22.02.2014 Zesstra
