Dokumentations-Update

Change-Id: I76167fb8572f14c173a38a4cccaf30fc75c36058
diff --git a/doc/lfun/AddFun b/doc/lfun/AddFun
index 5ba6cf1..4a56755 100644
--- a/doc/lfun/AddFun
+++ b/doc/lfun/AddFun
@@ -38,41 +38,43 @@
    keiner
 
 
+HINWEISE
+========
+
+   Die genannte Funktion <fun> wird per call_other() an this_object()
+   gerufen, d.h. ihre Sichtbarkeit muss static oder public sein.
+
+
 BEISPIELE
 =========
 
    Wenn ein zufaellig ausgewaehlter Passagier eines Schiffes unterwegs
    seekrank werden soll, koennte man das wie folgt realisieren:
 
-   create()
-   {
+   protected void create() {
      ...
-
      AddFun("seekrank", 5);
      ...
    }
 
-   seekrank()
-   {
-     object *passagiere, opfer;
-
+   seekrank() {
      // soll nicht immer passieren
      if (random(5))
        return;
 
      // Opfer auswaehlen
-     passagiere = QueryPassengers();
+     object* passagiere = QueryPassengers();
+     object opfer;
      if (sizeof(passagiere))
        opfer = passagiere[random(sizeof(passagiere))];
 
-     // Und viel Spass...
      tell_object(opfer,
-       "Du wirst seekrank! Schnell stuerzt Du zur Reling um  Dich zu\n"
-      +"uebergeben.\n");
+       "Du wirst seekrank! Schnell stuerzt Du zur Reling, um Dich zu\n"
+       "uebergeben.\n");
      tell_room(this_object(),
-       sprintf("%s ueberkommt die Seekrankheit!\n%s stuerzt an die Reling, "
-              +"um sich zu uebergeben.\n",
-               capitalize(opfer->name(WEN)),
+       sprintf("%s ueberkommt die Seekrankheit!\n"
+               "%s stuerzt an die Reling, um sich zu uebergeben.\n",
+               opfer->Name(WEN),
                capitalize(opfer->QueryPronoun(WER))), ({ opfer }) );
    }
 
@@ -82,4 +84,4 @@
 
    AddRoute(), AddMsg(), /std/transport.c
 
-Last modified: Wed May 8 10:16:46 1996 by Wargon
+Last modified: 15.01.2020, Arathorn
diff --git a/doc/lfun/Defend b/doc/lfun/Defend
index 189e6b5..83f493b 100644
--- a/doc/lfun/Defend
+++ b/doc/lfun/Defend
@@ -194,12 +194,12 @@
    enem->Defend(100, ({DT_BLUDGEON}), ([SP_PHYSICAL_ATTACK:1]), this_object());
 
    // ein magischer Angriff (ohne Treffermeldung):
-   enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), ([SP_PHYSICAL_ATTACK:0]),
-                this_object());
+   enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}),
+         ([SP_PHYSICAL_ATTACK:0, SP_SHOW_DAMAGE:0 ]),this_object());
 
    // ein magischer Angriff mit Treffermeldung:
-   enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), ([SP_SHOW_DAMAGE:1]),
-                this_object());
+   enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}),
+         ([SP_PHYSICAL_ATTACK:0, SP_SHOW_DAMAGE:1]), this_object());
 
 
 SIEHE AUCH
diff --git a/doc/lfun/Defend_bsp b/doc/lfun/Defend_bsp
index 9feb25f..5ef0350 100644
--- a/doc/lfun/Defend_bsp
+++ b/doc/lfun/Defend_bsp
@@ -40,7 +40,7 @@
       Treffermeldung und physischen Ruestungsschutz durchgeht.
       this_player()->Defend(random(500),
                             ({DT_PIERCE, DT_RIP}),
-                            ([SP_PHYSICAL_ATTACK: 0]),
+                            ([SP_PHYSICAL_ATTACK: 0, SP_SHOW_DAMAGE:0]),
                             this_object());
 
    4) Spell-Parameter
diff --git a/doc/lfun/reduce_hit_points b/doc/lfun/reduce_hit_points
index 7a1dcf0..f82674f 100644
--- a/doc/lfun/reduce_hit_points
+++ b/doc/lfun/reduce_hit_points
@@ -24,15 +24,15 @@
 BESCHREIBUNG
 ============
 
-   Dem Lebewesen werden damage Lebenspunkte abgezogen, aber der
-   Wert wird hinterher nicht kleiner als 1 sein und das Lebewesen
-   wird dadurch nicht sterben.
+   Dem Lebewesen werden damage Lebenspunkte abgezogen, aber das Lebewesen
+   wird hinterher nicht weniger als 1 Lebenspunkt haben und es wird
+   dadurch nicht sterben.
 
 
 RUECKGABEWERT
 =============
 
-   Die verbleibenden Lebenspunkte.
+   Die Lebenspunkte nach der Aenderung.
 
 
 BEISPIELE
@@ -50,20 +50,25 @@
 
    damage kann auch ein negativer Wert sein, dann werden dem Lebewesen
    diese Lebenspunkte gutgeschrieben und auf die aktuellen Lebenspunkte
-   addiert. Da dies eine Form der Heilung ist, nur nach Ruecksprache mit
-   dem Regionsmagier verwenden.
+   addiert. Da dies eine Form der Heilung ist, ist die Verwendung mit dem
+   Regionsmagier abzustimmen und dem EM fuer Heilungsbalance zur
+   Genehmigung vorzulegen.
+
+   Heilstellen sollten in neuem Code mit der Funktion restore_hit_points()
+   realisiert werden.
 
    Bei Heilstellen sollte eine evtl. Heilung des Spielers mit der eigens
-   dafuer eingerichteten Funktion check_and_update_timed_key realisiert
+   dafuer eingerichteten Funktion check_and_update_timed_key() realisiert
    werden.
 
 
 SIEHE AUCH
 ==========
 
-   Gegenpart:  restore_hit_points()
-   Verwandt:   do_damage(), Defend(), reduce_spell_points()
-   Props:      P_HP
-   Konzept:    heilung
+   Gegenpart: restore_hit_points()
+   Verwandt:    do_damage(), Defend(), reduce_spell_points(),
+              restore_spell_points(), check_and_update_timed_key()
+   Props:         P_HP
+   Konzept:   heilung
 
-Last modified: Sat Dec 13 01:00:47 1999 by Tilly
+Last modified: 20. Jan. 2020, Arathorn
diff --git a/doc/sphinx/lfun/AddFun.rst b/doc/sphinx/lfun/AddFun.rst
index 4e3856a..aa84a11 100644
--- a/doc/sphinx/lfun/AddFun.rst
+++ b/doc/sphinx/lfun/AddFun.rst
@@ -36,6 +36,13 @@
 
      keiner
 
+HINWEISE
+--------
+::
+
+     Die genannte Funktion <fun> wird per call_other() an this_object()
+     gerufen, d.h. ihre Sichtbarkeit muss static oder public sein.
+
 BEISPIELE
 ---------
 ::
@@ -43,35 +50,30 @@
      Wenn ein zufaellig ausgewaehlter Passagier eines Schiffes unterwegs
      seekrank werden soll, koennte man das wie folgt realisieren:
 
-     create()
-     {
+     protected void create() {
        ...
-
        AddFun("seekrank", 5);
        ...
      }
 
-     seekrank()
-     {
-       object *passagiere, opfer;
-
+     seekrank() {
        // soll nicht immer passieren
        if (random(5))
          return;
 
        // Opfer auswaehlen
-       passagiere = QueryPassengers();
+       object* passagiere = QueryPassengers();
+       object opfer;
        if (sizeof(passagiere))
          opfer = passagiere[random(sizeof(passagiere))];
 
-       // Und viel Spass...
        tell_object(opfer,
-         "Du wirst seekrank! Schnell stuerzt Du zur Reling um  Dich zu\n"
-        +"uebergeben.\n");
+         "Du wirst seekrank! Schnell stuerzt Du zur Reling, um Dich zu\n"
+         "uebergeben.\n");
        tell_room(this_object(),
-         sprintf("%s ueberkommt die Seekrankheit!\n%s stuerzt an die Reling, "
-                +"um sich zu uebergeben.\n",
-                 capitalize(opfer->name(WEN)),
+         sprintf("%s ueberkommt die Seekrankheit!\n"
+                 "%s stuerzt an die Reling, um sich zu uebergeben.\n",
+                 opfer->Name(WEN),
                  capitalize(opfer->QueryPronoun(WER))), ({ opfer }) );
      }
 
@@ -82,5 +84,5 @@
      AddRoute(), AddMsg(), /std/transport.c
 
 
-Last modified: Wed May 8 10:16:46 1996 by Wargon
+Last modified: 15.01.2020, Arathorn 
 
diff --git a/doc/sphinx/lfun/Defend.rst b/doc/sphinx/lfun/Defend.rst
index 70dc9d2..6a3b5a0 100644
--- a/doc/sphinx/lfun/Defend.rst
+++ b/doc/sphinx/lfun/Defend.rst
@@ -158,12 +158,12 @@
   enem->Defend(100, ({DT_BLUDGEON}), ([SP_PHYSICAL_ATTACK:1]), this_object());
 
   // ein magischer Angriff (ohne Treffermeldung):
-  enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), ([SP_PHYSICAL_ATTACK:0]), 
-               this_object());
+  enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), 
+        ([SP_PHYSICAL_ATTACK:0, SP_SHOW_DAMAGE:0 ]),this_object());
 
   // ein magischer Angriff mit Treffermeldung:
-  enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), ([SP_SHOW_DAMAGE:1]),
-               this_object());
+  enem->Defend(100, ({DT_BLUDGEON, DT_FIRE}), 
+        ([SP_PHYSICAL_ATTACK:0, SP_SHOW_DAMAGE:1]), this_object());
 
 SIEHE AUCH
 ----------
diff --git a/doc/sphinx/lfun/Defend_bsp.rst b/doc/sphinx/lfun/Defend_bsp.rst
index 29e710a..5c8fe79 100644
--- a/doc/sphinx/lfun/Defend_bsp.rst
+++ b/doc/sphinx/lfun/Defend_bsp.rst
@@ -39,7 +39,7 @@
      Treffermeldung und physischen Ruestungsschutz durchgeht.
      this_player()->Defend(random(500),
                            ({DT_PIERCE, DT_RIP}),
-                           ([SP_PHYSICAL_ATTACK: 0]),
+                           ([SP_PHYSICAL_ATTACK: 0, SP_SHOW_DAMAGE:0]),
                            this_object());
 
   4) Spell-Parameter
diff --git a/doc/sphinx/lfun/reduce_hit_points.rst b/doc/sphinx/lfun/reduce_hit_points.rst
index 790b078..83d08d4 100644
--- a/doc/sphinx/lfun/reduce_hit_points.rst
+++ b/doc/sphinx/lfun/reduce_hit_points.rst
@@ -23,15 +23,15 @@
 ------------
 ::
 
-    Dem Lebewesen werden damage Lebenspunkte abgezogen, aber der
-    Wert wird hinterher nicht kleiner als 1 sein und das Lebewesen
-    wird dadurch nicht sterben.
+    Dem Lebewesen werden damage Lebenspunkte abgezogen, aber das Lebewesen
+    wird hinterher nicht weniger als 1 Lebenspunkt haben und es wird
+    dadurch nicht sterben.
 
 RUECKGABEWERT
 -------------
 ::
 
-    Die verbleibenden Lebenspunkte.
+    Die Lebenspunkte nach der Aenderung.
 
 BEISPIELE
 ---------
@@ -49,22 +49,27 @@
 
     damage kann auch ein negativer Wert sein, dann werden dem Lebewesen
     diese Lebenspunkte gutgeschrieben und auf die aktuellen Lebenspunkte
-    addiert. Da dies eine Form der Heilung ist, nur nach Ruecksprache mit
-    dem Regionsmagier verwenden.
+    addiert. Da dies eine Form der Heilung ist, ist die Verwendung mit dem
+    Regionsmagier abzustimmen und dem EM fuer Heilungsbalance zur
+    Genehmigung vorzulegen.
+
+    Heilstellen sollten in neuem Code mit der Funktion restore_hit_points()
+    realisiert werden.
 
     Bei Heilstellen sollte eine evtl. Heilung des Spielers mit der eigens
-    dafuer eingerichteten Funktion check_and_update_timed_key realisiert
+    dafuer eingerichteten Funktion check_and_update_timed_key() realisiert
     werden.
 
 SIEHE AUCH
 ----------
 ::
 
-    Gegenpart:	restore_hit_points()
-    Verwandt:	do_damage(), Defend(), reduce_spell_points()
-    Props:	P_HP
-    Konzept:	heilung
+    Gegenpart: restore_hit_points()
+    Verwandt:	 do_damage(), Defend(), reduce_spell_points(), 
+               restore_spell_points(), check_and_update_timed_key()
+    Props:	   P_HP
+    Konzept:   heilung
 
 
-Last modified: Sat Dec 13 01:00:47 1999 by Tilly
+Last modified: 20. Jan. 2020, Arathorn