shoot_dam()

FUNKTION:
    static int shoot_dam(mapping shoot)

DEFINIERT IN:
    /std/ranged_weapon.c

ARGUMENTE:
    mapping shoot - Schussdaten

BESCHREIBUNG:
    Erhaelt von /std/ranged_weapon::cmd_shoot() die Schussdaten und berechnet
    den Schaden der Waffe, basierend auf den P_SHOOTING_WC von Waffe und
    Munition sowie der Geschicklichkeit des Schuetzen. HitFuncs der Munition
    und Skills werden hier ebenfalls beruecksichtigt.

RUECKGABEWERT:
    Schaden. Ebenfalls in 'shoot' unter SI_SKILLDAMAGE aktualisiert.

BEMERKUNGEN:
    'shoot' enthaelt normalerweise folgende Eintraege:
    * Key P_WEAPON:       die Schusswaffe
    * Key P_WEAPON_TYPE:  P_AMMUNITION, also die Munitions-ID
    * Key P_STRETCH_TIME: P_STRETCH_TIME der Waffe
    * Key P_WC:           P_SHOOTING_WC der Waffe
    * Key P_SHOOTING_WC:  P_SHOOTING_WC der Munition
    * Key P_AMMUNITION:   Munitionsobjekt (eventuell Unit)
    * Key SI_ENEMY:       gueltigen Gegner
    * Key SI_SKILLDAMAGE_TYPE:  Schaden (aus P_DAM_TYPE der Munition)
    * Key SI_SKILLDAMAGE_MSG/2: Munitionsname

SIEHE AUCH:
    Generell:  P_AMMUNITION, P_SHOOTING_WC, P_STRETCH_TIME
    Methoden:  FindRangedTarget(L), cmd_shoot(L)
    Skills:    UseSkill(L), SkillResTransfer(L)
    Attribute: QueryAttribute
    Sonstiges: fernwaffen, HitFunc

28.Jul 2014 Gloinson