
P_AMMUNITION
************


NAME
====

   P_AMMUNITION     "munition"


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

   <combat.h>


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

   Enthaelt die fuer eine Waffe gueltige Munition als String. Die
   Munition muss diesen String als ID besitzen.

   Fuer die Munitionsobjekte gilt:
   * es kann ein Skill am Spieler definiert werden, dieser wirkt dann
     zusaetzlich zum generellen SK_SHOOT-Skill.
   * sie koennen eine HitFunc besitzten, die beim Schuss abgefragt wird


BEMERKUNGEN
===========

   Bitte das #define MUN_MISC(x) benutzen. Munition sollte auch immer
   in Deutsch und Plural angegeben werden, da P_AMMUNITION direkt
   fuer Ausgaben an den Spieler ausgewertet wird.

   Momentan sind vier Munitionsarten in der combat.h vordefiniert:
   MUN_ARROW, MUN_STONE, MUN_BOLT, MUN_MISC


BEISPIELE
=========

   // fuer ein kleines Blasrohr im Blasrohr
   SetProp(P_AMMUNITION, MUN_MISC("Erbsen"));

   // Entsprechend in der Munition:
   AddId(MUN_MISC("Erbsen"));


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

   Generell:  P_SHOOTING_WC, P_STRETCH_TIME
   Methoden:  FindRangedTarget(L), shoot_dam(L), cmd_shoot(L)
   Gebiet:    P_RANGE, P_SHOOTING_AREA, P_TARGET_AREA
   Waffen:    P_WEAPON_TYPE, P_WC, P_EQUIP_TIME, P_NR_HANDS
   Kampf:     Attack(L), Defend(L), P_DISABLE_ATTACK, P_ATTACK_BUSY
   Team:      PresentPosition(L)
   Sonstiges: fernwaffen

29.Jul 2014 Gloinson
