diff --git a/doc/lfun/FindGroupN b/doc/lfun/FindGroupN
index 8364f77..b0104ee 100644
--- a/doc/lfun/FindGroupN
+++ b/doc/lfun/FindGroupN
@@ -1,45 +1,67 @@
+
 FindGroupN()
+************
 
-FUNKTION:
-	object*FindGroupN(object pl,int who,int n);
 
-DEFINIERT IN:
-	/std/spellbook.c
+FUNKTION
+========
 
-ARGUMENTE:
-	pl
-	  Lebewesen, von welchem die Freunde oder Feinde in der Umgebung
-	  gefunden werden sollen.
-	who
-	  Flag, welches anzeigt, ob Freunde oder Feinde gefunden werden
-	  sollen (Konstanten definiert in '/sys/new_skills.h'):
-	    FG_ENEMIES - (Wert -1) Feinde sollen gefunden werden
-	    FG_FRIENDS - (Wert  1) Freunde sollen gefunden werden
-	    FG_ALL     - (Wert  0) alle Lebewesen sollen gefunden werden
-	n
-	  Anzahl der Lebewesen, die zurueckgegeben werden sollen.
-	  Hierbei geht vorher noch das Skillattribute SA_EXTENSION ein!
-	  Es wird mindestens 1 Lebewesen zurueckgeliefert (sofern gefunden).
+   object*FindGroupN(object pl,int who,int n);
 
-RUeCKGABEWERT:
-	Array mit gefundenen Lebewesen
 
-BESCHREIBUNG:
-	Ausgesucht werden die Lebewesen genauso wie bei FindGroup(), nur
-	dass zum Schluss die Anzahl noch begrenzt wird.
+DEFINIERT IN
+============
 
-BEISPIELE:
-	Man moechte maximal 5 Feinde finden, die man gleichzeitig mit einem
-	Spell belegen kann:
-	  enemyList=FindGroupN(caster,FG_ENEMIES,5);
-	Dies gilt jedoch nur bei SA_EXTENSION==100, sonst wird
-	dementsprechend mehr oder weniger zurueckgegeben.
-	 (also bei SA_EXTENSION==200 doppelt so viele -> 10 Lebewesen)
-	Das Skillattribute SA_EXTENSION kann auch durch SA_QUALITY
-	veraendert worden sein; das sollte beachtet werden.
+   /std/spellbook.c
 
-SIEHE AUCH:
-	FindGroup(), FindGroupP(), P_FRIEND, P_NO_GLOBAL_ATTACK
 
-----------------------------------------------------------------------------
+ARGUMENTE
+=========
+
+   pl
+     Lebewesen, von welchem die Freunde oder Feinde in der Umgebung
+     gefunden werden sollen.
+   who
+     Flag, welches anzeigt, ob Freunde oder Feinde gefunden werden
+     sollen (Konstanten definiert in '/sys/new_skills.h'):
+       FG_ENEMIES - (Wert -1) Feinde sollen gefunden werden
+       FG_FRIENDS - (Wert  1) Freunde sollen gefunden werden
+       FG_ALL     - (Wert  0) alle Lebewesen sollen gefunden werden
+   n
+     Anzahl der Lebewesen, die zurueckgegeben werden sollen.
+     Hierbei geht vorher noch das Skillattribute SA_EXTENSION ein!
+     Es wird mindestens 1 Lebewesen zurueckgeliefert (sofern gefunden).
+
+
+RUeCKGABEWERT
+=============
+
+   Array mit gefundenen Lebewesen
+
+
+BESCHREIBUNG
+============
+
+   Ausgesucht werden die Lebewesen genauso wie bei FindGroup(), nur
+   dass zum Schluss die Anzahl noch begrenzt wird.
+
+
+BEISPIELE
+=========
+
+   Man moechte maximal 5 Feinde finden, die man gleichzeitig mit einem
+   Spell belegen kann:
+     enemyList=FindGroupN(caster,FG_ENEMIES,5);
+   Dies gilt jedoch nur bei SA_EXTENSION==100, sonst wird
+   dementsprechend mehr oder weniger zurueckgegeben.
+    (also bei SA_EXTENSION==200 doppelt so viele -> 10 Lebewesen)
+   Das Skillattribute SA_EXTENSION kann auch durch SA_QUALITY
+   veraendert worden sein; das sollte beachtet werden.
+
+
+SIEHE AUCH
+==========
+
+   FindGroup(), FindGroupP(), P_FRIEND, P_NO_GLOBAL_ATTACK
+
 Last modified: Mon Jan 25 15:04:31 1999 by Patryn
