blob: 4d3d3e0c209df5d6069d3f8c7fc13b6bd2191535 [file] [log] [blame]
QueryDefend()
FUNKTION:
int QueryDefend(string|string* dtyp, int|mapping spell, object enemy);
DEFINIERT IN:
/std/armour/combat.c
ARGUMENTE:
dtyp - Schadenstypen der Angriffsart
spell - 0 bei konventionellem Angriff,
!= 0 bei Angriff mit einem nichtphysischen Spell,
mapping bei genaueren Angaben zur Wirkung
enemy - Der angreifende Gegner
BESCHREIBUNG:
Dies ist die zentrale Funktion einer Ruestung. Sie wird in jeder
Kampfrunde aus /std/living/combat::Defend() fuer jede Ruestung aufgerufen,
die der Spieler angezogen hat.
Der Schutzwert von P_AC entfaltet seine Wirkung nur bei konventionellen
Angriffen:
* wenn 'spell' 0 ist (bei Aufruf aus der Defend heraus ausgeschlossen)
* wenn 'spell' ein Mapping mit dem Flag SP_PHYSICAL_ATTACK != 0 UND
in 'dtyp' mindestens ein physischer Schaden enthalten ist
RUeCKGABEWERT:
Die Ruestungsstaerke in dieser Kampfrunde. Sie ermittelt sich als
Zufallszahl zwischen 0 und P_AC, zuzueglich des Ergebnisses des
DefendFunc()-Aufrufs.
BEMERKUNGEN:
Auch wenn man eine DefendFunc() benutzt, darf der Rueckgabewert
insgesamt nicht groesser werden als der fuer den Ruestungstyp
maximal zulaessige!
SIEHE AUCH:
Ruestungen: P_ARMOUR_TYPE, P_NR_HANDS, P_ARMOURS, P_WORN
Schutz: P_AC, Defend(), DefendFunc
Sonstiges: P_EQUIP_TIME, P_LAST_USE, P_DAM_TYPE
Verwandt: QueryArmourByType(L), P_WEAPON, FilterClothing(),
FilterArmours()
Resistenz: P_RESISTANCE_STRENGTHS, CheckResistance(L)
28.Jul 2014 Gloinson