diff --git a/doc/lfun/AddSpell b/doc/lfun/AddSpell
index b08a296..a8623e0 100644
--- a/doc/lfun/AddSpell
+++ b/doc/lfun/AddSpell
@@ -7,7 +7,7 @@
 ========
 
    varargs int AddSpell(int rate, int damage,
-      string|<int|spell>* TextForEnemy, string|<int|string>*
+      string|<int|string>* TextForEnemy, string|<int|string>*
       TextForOthers, string|string* dam_type, string|closure func,
       int|mapping spellarg)
 
@@ -27,25 +27,26 @@
    damage        - Der Schadenswert fuer Defend(),
       muss > 0 sein
 
-   TextForEnemy  - Text, den der Feind erhalten soll
+   TextForEnemy  - Text, den der Feind erhalten soll.
       String <text> oder Array der Form ({<text>,<messagetype>})
       (Siehe ReceiveMsg())
 
-   TextForOthers - Text, den andere im Raum erhalten sollen
-      String <text> oder Array der Form ({<text>,<messagetype>})
-      (Siehe ReceiveMsg())
+   TextForOthers - Text, den andere im Raum erhalten sollen.
+      String <text> ode Array der Form ({<text>,<messagetype>}) (Siehe
+      ReceiveMsg())
 
    dam_type      - Schadenstyp(en) fuer Defend(),
       (Default: ({DT_MAGIC}) fuer Magische und ({DT_BLUDGEON}) fuer
       physikalische Angriffe)
 
    func          - Funktionsname oder Closure, die nach Anwendung
-      aufgerufen werden soll (Optional, bekommt als Argumente object
+      aufgerufen werden soll. (Optional, bekommt als Argumente object
       enemy, int real_damage, string* dam_type)
 
    sinfo         - Skillinfomapping, muss SI_SPELL mit den SP_* fuer
-      den Aufruf von Defend() enthalten Default ist ([SI_SPELL:
-      ([SP_PHYSICAL_ATTACK: 0]), SI_MAGIC_TYPE: ({ MT_ANGRIFF }) ])
+      den Aufruf von Defend() enthalten. Hierfuer muss <newskills.h>
+      includiert werden. Default ist ([SI_SPELL: ([SP_PHYSICAL_ATTACK:
+      0]), SI_MAGIC_TYPE: ({ MT_ANGRIFF }) ])
 
 
 BESCHREIBUNG
diff --git a/doc/lfun/AddVItem b/doc/lfun/AddVItem
index b46b297..0b48656 100644
--- a/doc/lfun/AddVItem
+++ b/doc/lfun/AddVItem
@@ -7,8 +7,7 @@
 ========
 
    public varargs void AddvItem(string key, int refresh, mapping
-   shadowprops,
-      string path, mapping props)
+   shadowprops, string path, mapping props)
 
 
 DEFINIERT IN
@@ -78,11 +77,11 @@
       * VI_REFRESH_NONE Es wird erst nach dem Neuladen/Neuerstellen
         des Containers wieder verfuegbar.
 
-      * VI_REFRESH_ALWAYS Es wird mit dem naechsten Reset wieder
-        verfuegbar. *Vorsicht!*
+      * VI_REFRESH_ALWAYS
 
       * VI_REFRESH_REMOVE Es wird mit dem naechsten Reset wieder
-        verfuegbar, wenn das geclonte Objekt nicht mehr im Raum ist.
+        verfuegbar, wenn das Item genommen wurde (auch wenn es danach
+        wieder um Raum abgelegt wurde). *Vorsicht*
 
       * VI_REFRESH_DESTRUCT Es wird mit dem naechsten Reset wieder
         verfuegbar, wenn das geclonte Objekt nicht mehr existiert.
diff --git a/doc/lfun/DefendOther b/doc/lfun/DefendOther
index 2b706f5..ea9f8e5 100644
--- a/doc/lfun/DefendOther
+++ b/doc/lfun/DefendOther
@@ -6,8 +6,8 @@
 FUNKTION
 ========
 
-   public <int|string*|mapping>* DefendOther(int dam, string* dam_type,
-                                       int|mapping si_spell, object enemy)
+   public <int|string*|mapping|object>* DefendOther(int dam,
+                      string* dam_type, int|mapping si_spell, object enemy)
 
 
 DEFINIERT IN
diff --git a/doc/lfun/RemoveVItem b/doc/lfun/RemoveVItem
index 8a1d88b..922d031 100644
--- a/doc/lfun/RemoveVItem
+++ b/doc/lfun/RemoveVItem
@@ -1,6 +1,6 @@
 
-AddvItem()
-**********
+RemoveVItem()
+*************
 
 
 FUNKTION
diff --git a/doc/lfun/consume b/doc/lfun/consume
index f07ece3..48926d8 100644
--- a/doc/lfun/consume
+++ b/doc/lfun/consume
@@ -23,11 +23,23 @@
 =========
 
    cinfo
-       Mapping mit Informationen ueber die Gesundheitsaenderung
-       Heilung.
+     Mapping mit Informationen ueber die Gesundheitsaenderung. Folgende
+     Schluessel koennen verwendet werden:
+     H_EFFECTS - Mapping der zu aendernden Properties mit dem Umfang der
+                 Aenderung, erlaubte Properties siehe H_ALLOWED_EFFECTS
+                 (P_HP, P_SP, P_POISON).
+     H_CONDITIONS - Mapping der zu pruefenden Properties mit dem Umfang der
+                    Aenderung, erlaubte Properties siehe
+                    H_ALLOWED_CONDITIONS (P_FOOD, P_DRINK, P_ALCOHOL)
+     H_DISTRIBUTION - Verteilung der Aenderung fuer P_HP, P_SP
+                      HD_INSTANT:  sofortige Heilung
+                      HD_STANDARD: 5 pro Heartbeat
+                      1 - 50:      angebene Zahl pro Heartbeat
+     Aenderungen koennen sowohl positiv als auch negativ sein.
+
    testonly
-       Gibt an, ob nur die Bedingungen abgetestet werden sollen,
-       oder auch die Wirkung eintreten soll.
+     Gibt an, ob nur die Bedingungen abgetestet werden sollen, oder
+     auch die Wirkung eintreten soll.
 
 
 RUECKGABEWERT
@@ -35,11 +47,16 @@
 
     1 erfolgreich konsumiert
     0 keine oder falsche Aenderungsdaten in cinfo (nicht benutzbar)
-   <0 Bedingung fuer konsumieren nicht erfuellt, Bitset aus:
+   <0 Bedingung fuer konsumieren nicht erfuellt.
+      Der Rueckgabewert ist dann ein Bitset aus:
       HC_MAX_FOOD_REACHED    - Kann nichts mehr essen
       HC_MAX_DRINK_REACHED   - Kann nichts mehr trinken
       HC_MAX_ALCOHOL_REACHED - Kann nichts mehr saufen
-      HC_HOOK_CANCELLETION   - durch H_HOOK_CONSUME abgebrochen
+      HC_HOOK_CANCELLATION   - durch H_HOOK_CONSUME abgebrochen
+
+    Hinweis: Wenn eine der Bedingungen nicht erfuellt ist, wird gar keine
+    Heilung ausgefuehrt, aber es sind stets alle Fehlercodes im
+    Rueckgabewert eingetragen.
 
 
 BESCHREIBUNG
@@ -51,49 +68,38 @@
    erledigen. Sie vereint in sich die Pruefung auf Durchfuerbarkeit der
    Aenderung und Anwendung der Aenderung.
 
-   Der erste Parameter gibt die Eigenschaften der Aenderung an, der zweite ob
-   ausschliesslich die Pruefung auf Anwendbarkeit erfolgen soll.
-
-   Das Mapping cinfo hat folgende Struktur:
-   a) Einfache Angabe der betroffenen Properties. In neuem Code bitte nicht
-      machen, dort ein Mapping wie unter b) beschrieben nutzen!
-
-   b) Strukturiert in Effekte und Bedingungen mit folgenden Schluesseln:
-     H_EFFECTS - Mapping der zu aendernden Properties mit dem Umfang der
-                 Aenderung, erlaubte Properties siehe H_ALLOWED_EFFECTS
-
-     H_CONDITIONS - Mapping der zu pruefenden Properties mit dem Umfang der
-                    Aenderung, erlaubte Properties siehe H_ALLOWED_CONDITIONS
-
-     H_DISTRIBUTION - Verteilung der Aenderung fuer P_SP, P_HP
-                      HD_INSTANT bzw. 0: instante Heilung
-                      1 - 50: angebene Zahl pro Heartbeat
-                      HD_STANDARD: 5 pro Heartbeat
-
-   Aenderungen koennen sowohl positiv als auch negativ sein.
+   Das erste Argument gibt die Eigenschaften der Aenderung an, der zweite
+   ob ausschliesslich die Pruefung auf Anwendbarkeit erfolgen soll.
 
 
 BEMERKUNGEN
 ===========
 
-   Hierbei aber bitte beachten, dass Tanken/Entanken sowie Heilungen ggf. von
+   Hierbei bitte beachten, dass Tanken/Entanken sowie Heilungen ggf. von
    der (Heilungs-)Balance genehmigt werden muessen!
 
+   Historischer Code enthaelt u.U. auch eine einfache Angabe der
+   betroffenen Properties als Argument enthalten. Dies in neuem Code
+   nicht mehr machen, dort ein Mapping wie oben beschrieben nutzen.
+
+   H_ALLOWED_CONDITIONS und H_ALLOWED_EFFECTS sind in /sys/living/life.h
+   definiert.
+
 
 BEISPIELE
 =========
 
    Heilung um 100 KP, 50 LP, aber nur wenn 30 P_FOOD gegessen werden kann:
 
-   consume( ([H_EFFECTS: ([P_HP:50, P_SP:100]),
+   consume( ([H_EFFECTS:    ([P_HP:50, P_SP:100]),
               H_CONDITIONS: ([P_FOOD:30]) ]) );
 
    Heilung um 100 KP und Vergiftung um 2, wenn 15 Alkohol getrunken werden
    koennen. Die SP werden zeitverzoegert mit 10 pro Heartbeat zugefuehrt.
 
-   consume(([H_EFFECTS: ([P_SP: 100, P_POISON: 2]),
-             H_CONDITIONS: ([P_ALCOHOL: 15]),
-             H_DISTRIBUTION: 10]) )
+   consume( ([H_EFFECTS:      ([P_SP: 100, P_POISON: 2]),
+              H_CONDITIONS:   ([P_ALCOHOL: 15]),
+              H_DISTRIBUTION: 10]) );
 
 
 SIEHE AUCH
