Automatisch erzeugte Manpages.

Damit nicht jeder sphinx auf dem Rechner haben muss,
behalten wir bis auf weiteres die aus den .rst
erzeugten Manpoages auch im Repo.

Change-Id: Id556c0d11cf5f79659d8350952ce1c014d81ea44
diff --git a/doc/sphinx/man/lfun/check_restrictions b/doc/sphinx/man/lfun/check_restrictions
new file mode 100644
index 0000000..e173e8f
--- /dev/null
+++ b/doc/sphinx/man/lfun/check_restrictions
@@ -0,0 +1,202 @@
+
+check_restrictions()
+********************
+
+
+FUNKTION
+========
+
+   string check_restrictions(object pl, mapping restr)
+
+
+DEFINIERT IN
+============
+
+   /std/restriction_checker.c
+
+
+ARGUMENTE
+=========
+
+   object pl        geprueftes Lebewesen
+   mapping restr    Mapping mit Restriktionen, s.u.
+
+
+BESCHREIBUNG
+============
+
+   Die Methode wird verwendet, um Restriktionen (zum Beispiel fuer das
+   Casten eines Spells) zu pruefen. Sie wird von Spellbook und
+   Gildenobjekt direkt genutzt.
+
+   Ihr wird dabei ein Spielerobjekt sowie ein Mapping mit den jeweiligen
+   Restriktionen uebergeben. Die aktuell moeglichen Keys des Mappings sind
+   weiter unten gelistet.
+
+
+BEMERKUNGEN
+===========
+
+   Es wird bei der Rasse P_REAL_RACE geprueft. Der Tarnhelm funktioniert
+   also nicht.
+
+   Bei Erweiterungsvorschlaegen wendet euch bitte an einen EM oder
+   inheritet im Zweifelsfall nach Absprache.
+   NIEMALS solchen Code einfach KOPIEREN. Spaeter muss nur irgendwer
+   eurem alten Code hinterherraeumen.
+
+Aktuelle Liste der pruefbaren Parameter:
+   P_LEVEL
+      Mindeststufe, die das Lebewesen besitzen muss, um die Aktion
+      auszufuehren.
+
+   P_GUILD_LEVEL
+      Gildenlevel, das das Lebewesen mindestens erreicht haben muss,
+      um die Aktion auszufuehren.
+
+   SR_SEER
+      Ist gesetzt, wenn das Lebewesen Seher sein muss. Auswertung nur
+      fuer Interactives, NSC ignorieren das Flag.
+
+   P_XP
+      Mindestmenge an Erfahrungspunkten, die ein Lebewesen besitzen
+      muss, um die Aktion auszufuehren.
+
+   P_QP
+      Mindestmenge an Abenteuerpunkten, die das Lebewesen haben muss.
+
+   P_ALCOHOL
+      Menge an Alkohol, unter der der Alkoholspiegel des Lebewesen
+      liegen muss, um die Aktion noch ausfuehren zu koennen.
+
+   P_DRINK
+      Menge an Fluessigkeit, unter der der Fluessigkeitsspiegel des
+      Lebewesen liegen muss, um die Aktion noch ausfuehren zu koennen.
+
+   P_FOOD
+      Beinhaltet die Menge an Nahrung, unter der der Nahrungsspiegel
+      des Spielers liegen muss, um die Aktion noch ausfuehren zu
+      koennen.
+
+   P_DEAF
+      Ist gesetzt, falls der Spieler nicht taub sein darf.
+
+   P_FROG
+      Ist gesetzt, falls der Spieler kein Frosch sein darf.
+
+   P_BLIND
+      Ist gesetzt, falls der Spieler nicht blind sein darf. Achtung:
+      das ist nicht gleichbedeutend mit dem Umstand, dass er evtl.
+      nichts mehr sehen kann. Auch andere Gruende (zum Beispiel
+      Dunkelheit) koennen bewirken, dass ein Spieler nichts mehr
+      sieht.
+
+   A_INT, A_DEX, A_CON, A_STR
+      Jeweilige Mindesthoehe eines Attribut, um eine Aktion ausfuehren
+      zu koennen.
+
+   SR_BAD, SR_GOOD
+      Gibt an, wie [minimal] boese bzw. wie [maximal] gut ein
+      Charakter sein darf, um eine Aktion ausfuehren zu koennen.
+
+   SR_MIN_SIZE, SR_MAX_SIZE
+      Gibt die minimale, bzw. die maximale Groesse an, die ein
+      Charakter maximal haben darf, um eine Aktion ausfuehren zu
+      koennen.
+
+   SR_FREE_HANDS
+      Gibt an, wieviele freie Haende ein Charakter fuer diese Aktion
+      besitzen muss.
+
+   SR_EXCLUDE_RACE
+      Mitglieder aller in dieser Liste aufgefuehrten Rassen koennen
+      diese Aktion nicht ausfuehren.
+
+   SR_INCLUDE_RACE
+      Mitglieder aller NICHT in dieser Liste aufgefuehrten Rassen
+      koennen diese Aktion nicht ausfuehren.
+
+   SM_RACE
+      Hier kann pro Rasse ein Mapping mit besonderen (nur) fuer diese
+      Rasse geltenden Einschraenkungen vorgenommen werden. Als Keys
+      sind die in dieser Manpage beschriebenen Keys erlaubt, wobei
+      SM_RACE nicht rekursiv ausgewertet wird. Der Rassenname ist
+      gross geschrieben und "*" steht fuer alle Rassen.
+
+   SR_EXCLUDE_GUILD SR_INCLUDE_GUILD
+
+      Diese beiden Keys verhalten sich wie SR_*_RACE, nur dass hier
+      Gilden genannt werden.
+
+   SR_FUN
+      Hier kann eine Funktion in verschiedenen Formen zum Pruefen der
+      Restriktionen angegeben werden, siehe execute_anything(). Das
+      kann nuetzlich sein, um andere Restriktionen zu pruefen, wie das
+      Bestehen von Miniquests oder andere Faehigkeiten/Flags. Ist der
+      Test nicht bestanden, gibt die Funktion einen String zurueck.
+
+   SR_PROP
+      Hier kann ein Mapping mit Properties und zugehoerigen Werten
+      angegeben werden, die jeweils auf Identitaet geprueft werden.
+      Zusaetzlich sollte eine Meldung angegeben werden, die als
+      Fehlermeldung ausgegeben wird, wenn der Spieler die Bedingung
+      nicht erfuellt. Es sollte immer eine passende Meldung fuer den
+      Spieler eingebaut werden. Beispiel: ([ SR_PROP:
+      ([P_AUSGANG_ENTDECKT: 1; "Dein Schwert fluestert "
+
+         "veraergert: Ich werde Dir erst dann zu Diensten sein, wenn
+         Du " "Dich als wuerdig erwiesen hast!"]) ])
+
+      Aufgrund der Meldung wird empfohlen, SR_PROP nicht in
+      Restriktionen einzusetzen, die massenweise in Savefiles landen
+      (z.B. Spielersavefiles).
+
+   SR_QUEST
+      Hier kann ein String-Array mit den Namen (Keys) der Quest(s)
+      angegeben werden, die der Spieler bestanden haben muss, um die
+      Aktion ausfuehren zu koennen.
+
+   SQ_MINIQUEST
+      Hier kann entweder ein String-Array mit den Ladenamen der
+      vergebenden Objekte oder ein Int-Array mit den Index-Nummern
+      (IDs) der Miniquest(s) (empfohlen!) angegeben werden, die der
+      Spieler bestanden haben muss, um die Aktion ausfuehren zu
+      koennen.
+
+
+BEISPIELE
+=========
+
+   // #1 Levelbeschraenkung in der Abenteurergilde
+   AddSpell("feuerball",20,
+            ([SI_SKILLRESTR_LEARN:([P_LEVEL:15]), ...
+
+   // #2 Glaubenstest im Klerus
+   AddSpell("bete",
+            ([SI_SKILLRESTR_LEARN: ([P_GUILD_LEVEL : LVL_NOVIZE,
+                                     SR_FUN : #'glaubensTest ]), ...
+   // mit
+   static string glaubensTest(object pl) {
+     if (pl->QueryProp(K_STRENGTH) < 8000)
+       return ("Deine Glaubensstaerke laesst zu wuenschen uebrig!\n");
+     return 0;
+   }
+
+   // #3 SM_RACE-Modifikation der Restriktionen:
+   //    haertere Restriktionen fuer Zwerge
+   //    - hoeheres Level
+   //    - zusaetzlich A_STR pruefen
+   ([P_LEVEL:15,
+     A_INT:10,
+     SM_RACE: (["Zwerg": ([P_LEVEL:17, A_STR:20])])])
+   // ist identisch zu
+   ([SM_RACE: (["*":     ([P_LEVEL:15, A_INT:10]),
+                "Zwerg": ([P_LEVEL:17, A_INT:10, A_STR:20])])])
+
+
+SIEHE AUCH
+==========
+
+   execute_anything(L), AddSpell (Gilde), P_RESTRICTIONS
+
+3. Januar 2014, Arathorn