Formatierung verbessert.
Change-Id: I15ed1deb9794b3d472d4b872205b727231715fc2
diff --git a/doc/sphinx/lfun/Defend.rst b/doc/sphinx/lfun/Defend.rst
index b404e9d..f0d80cf 100644
--- a/doc/sphinx/lfun/Defend.rst
+++ b/doc/sphinx/lfun/Defend.rst
@@ -50,64 +50,68 @@
diverse Flags, die das Ergebnis manipulieren (in new_skills.h
enthalten). Nichtangabe eines Flags gilt als 0.
- - SP_PHYSICAL_ATTACK ---------- 0/1
- 1, wenn Ruestungen wirken sollen, 0 sonst
- -> entspricht !spell, wenn dieses Int ist
- - SP_NO_ENEMY ----------------- 0/1
- 1, falls der Angriff nicht toedlich ist, es also keinen echten Gegner
- gibt
- -> es wird dann reduce_hit_points() gerufen statt do_damage()
- - SP_NO_ACTIVE_DEFENSE -------- 0/1
- 1, falls aktive Abwehren (wie zurueckschlagende Amulette,
- Karateabwehren oder Ausweichmanoever) unterbleiben sollen
- -> zB bei Kratzen durch Dornen oder Fall aus grosser Hoehe
- ist aktive Abwehr oder Ausweichen unlogisch
- - SP_RECURSIVE ---------------- 0/1
- 1, falls der Spell aus einem Defend gerufen wurde (oder einer DefendFunc)
- -> verhindert Rekursionsprobleme
- - SP_NAME --------------------- string
- Name des Spells
- - SP_GLOBAL_ATTACK ------------ 0/1
- 1 bei Flaechenspells
- - SP_REDUCE_ARMOUR ------------ Mapping: keys AT_X/P_BODY, values int>=0
- Die Schutzwirkung durch P_AC/Magie einer Ruestung wird typabhaengig
- reduziert. Aufbau eines Mappings im Beispiel::
+ - SP_PHYSICAL_ATTACK (int)
+ 1, wenn es ein physischer Angriff ist, d.h. Ruestungen wirken sollen,
+ 0 sonst. Dies entspricht dem alten !spell (wenn Spell kein Mapping
+ ist).
+ - SP_NO_ENEMY (int)
+ 1, falls der Angriff nicht toedlich ist, es also keinen echten Gegner
+ gibt. Es wird dann reduce_hit_points() gerufen statt do_damage()
+ - SP_NO_ACTIVE_DEFENSE (int)
+ 1, falls aktive Abwehren (wie zurueckschlagende Amulette,
+ Karateabwehren oder Ausweichmanoever) unterbleiben sollen, zB bei
+ Kratzen durch Dornen oder Fall aus grosser Hoehe ist aktive Abwehr
+ oder Ausweichen unlogisch
+ - SP_RECURSIVE (int)
+ 1, falls der Spell aus einem Defend gerufen wurde (oder einer
+ DefendFunc). Dies ist sehr wichtig, um unendliche Rekursionen zu
+ vermeiden, wenn zwei zurueckschlagende Verteidigungen zusammentreffen.
+ - SP_NAME (string)
+ Name des Spells
+ - SP_GLOBAL_ATTACK (int)
+ 1 bei Flaechenspells (die mehrere Ziele treffen koennen)
+ - SP_REDUCE_ARMOUR (mapping) ------------ Mapping: keys AT_X/P_BODY, values int>=0
+ Die Schutzwirkung durch P_AC/Magie einer Ruestung wird typabhaengig
+ reduziert. Als Keys sind P_BODY und die AT_* erlaubt, die Werte
+ muessen ints > 0 sein.
+ Aufbau eines Mappings im Beispiel::
- ([AT_BOOTS: 0, // Stiefel schuetzen gar nicht
- P_BODY: 50, // Koerper zu 50%
- AT_BELT: 600 // Guertel zu 600%
- ])
- -> alle 'fehlenden' Eintraege wirken normal
+ ([AT_BOOTS: 0, // Stiefel schuetzen gar nicht
+ P_BODY: 50, // Koerper zu 50%
+ AT_BELT: 600 // Guertel zu 600%
+ ])
+ -> alle 'fehlenden' Eintraege wirken normal
- - SP_SHOW_DAMAGE -------------- 0/1 oder Array von Arrays
- 0, fuer keine Treffermeldung, 1 sonst
- In einem Array koennen Ersatz-Treffermeldungen definiert werden. Format
- ist::
+ - SP_SHOW_DAMAGE (int or Array von Array)
+ 0 fuer keine Treffermeldung, 1 fuer Standardtreffermeldungen. Falls
+ individuelle Treffermeldungen geschwuenscht sind, koennen aber auch in
+ einem Array Ersatz-Treffermeldungen definiert werden. Das Format
+ ist::
- ({
- ({ int lphit1, string mess_me, string mess_en, string mess_room }),
- ({ lphit2, mess_me, mess_en, mess_room }),
- ...
- ({ lphitn, mess_me, mess_en, mess_room }),
- })
- wobei lphit1<lphit2<...<lphitn sein muss, d.h. das Array-Array
- aufsteigend sortiert.
+ ({
+ ({ int lphit1, string mess_me, string mess_en, string mess_room }),
+ ({ lphit2, mess_me, mess_en, mess_room }),
+ ...
+ ({ lphitn, mess_me, mess_en, mess_room }),
+ })
+ wobei lphit1<lphit2<...<lphitn sein muss, d.h. das Array-Array
+ aufsteigend sortiert.
- Ist ein Treffer x LP hart, werden die Meldungen des lphit-Arrays
- ausgegeben, dessen Wert am naehesten unter dem Schaden liegt.
+ Ist ein Treffer x LP hart, werden die Meldungen des lphit-Arrays
+ ausgegeben, dessen Wert am naehesten unter dem Schaden liegt.
- In den Meldungen mess_me (an den Getroffenen), mess_en (an den Feind),
- mess_room (an die restlichen Umstehenden) koennen Ersatzstrings wie
- folgt verwendet werden::
+ In den Meldungen mess_me (an den Getroffenen), mess_en (an den Feind),
+ mess_room (an die restlichen Umstehenden) koennen Ersatzstrings wie
+ folgt verwendet werden::
- @WER1/@WESSEN1/@WEM1/@WEN1 - name(casus) des Getroffenen (TO)
- @WER2/@WESSEN2/@WEM2/@WEN2 - name(casus) des Feindes (enemy)
+ @WER1/@WESSEN1/@WEM1/@WEN1 - name(casus) des Getroffenen (TO)
+ @WER2/@WESSEN2/@WEM2/@WEN2 - name(casus) des Feindes (enemy)
- - EINFO_DEFEND ------------ Mapping
- Dieses Mapping liefert erweiterte Informationen zu dem
- bisherigen Ablauf des aktiven Attacks.
- Die verfuegbaren Informationen sind in der Manpage zu
- DefendInfo festgehalten.
+ - EINFO_DEFEND (mapping)
+ Dieses Mapping liefert erweiterte Informationen zu dem
+ bisherigen Ablauf des aktiven Attacks.
+ Die verfuegbaren Informationen sind in der Manpage zu
+ DefendInfo festgehalten.
Reihenfolgen in Defend
++++++++++++++++++++++