Lpc Manpages

HitFunc()

FUNKTION:
     int HitFunc(object enemy);

DEFINIERT IN:
     eigenen Objekten, fuer /std/weapon/combat.c

ARGUMENTE:
     enemy
          Der Gegner, gegen den die Waffe eingesetzt wird.

BESCHREIBUNG:
     Die Waffe kann anhand des Gegners enemy entscheiden, ob ein
     Schadensbonus oder auch ein Schadensmalus wirksam wird. Dieser Bonus
     wird zu dem normalen Schaden der Waffe hinzuaddiert.
     Die HitFunc wird mit der Propertie P_HIT_FUNC eingetragen.

RUECKGABEWERT:
     Der Schadensbonus bzw. der Abschlag.

BEMERKUNGEN:
     Wenn durch den Bonus die maximale erlaubten Schadenswerte
     ueberschritten werden koennen, sollte man seinen Regionsmagier und den
     Erzmagier fuer Waffen- und Ruestungsfragen (momentan Mupfel)
     konsultieren!

BEISPIELE:
     Eine Waffe, die gegen Orks besonders gut wirkt:

     inherit "std/weapon";

     #include <properties.h>
     #include <combat.h>

     create()
     {
       ::create();

       ... /* zig SetProp's, um die Waffe zu konfigurieren */

       /* HitFunc() ist in der Waffe selbst definiert */
       SetProp(P_HIT_FUNC, this_object());
     }

     int HitFunc(object enemy)
     {
       /* laesst sich der Gegner als Ork ansprechen? */
       if (enemy->id("ork"))
         return 10+random(50); /* Ja => Schaden erhoehen */

       return 0;   /* ansonsten keinen zusaetzlichen Schaden anrichten */
     }

SIEHE AUCH:
     SetHitFunc(), QueryDefend(), P_HIT_FUNC, /std/weapon.c