Manpages als reStructuredText erstellt

Unsere Manpages wurden mit einem LPC-Tool in
reStructuredText konvertiert und liegen jetzt
in diesem Verzeichnis als Quelldaten.
Aus diesen reStructuredText sollen dann per
Script die ASCII-Manpages und per Sphinx HTML u.a.
erzeugt werden.

Change-Id: I75d659a7b3f9863aecb11dbeb0037e6cae227c36
diff --git a/doc/sphinx/lfun/AddExtraLook.rst b/doc/sphinx/lfun/AddExtraLook.rst
new file mode 100644
index 0000000..30b255a
--- /dev/null
+++ b/doc/sphinx/lfun/AddExtraLook.rst
@@ -0,0 +1,131 @@
+AddExtraLook()
+==============
+
+AddExtraLook()
+varargs int AddExtraLook(string look, [int duration, string key,
+                         string lookende, object ob]);
+--------------------------------------------------------------------------------------------------------------------------------------
+::
+
+DEFINIERT IN
+------------
+::
+
+   /std/living/description.c
+
+BESCHREIBUNG
+------------
+::
+
+   Der Extralook erscheint in der Langbeschreibung des Lebewesens.
+   Eintraege koennen mit dieser Funktion hinzugefuegt werden. Dies ist der
+   bevorzugte Weg, wenn ansonsten extra ein Objekt im Spielerinventar abgelegt
+   werden muesste.
+
+   
+
+   Alle Parameter bis auf <look> sind optional.
+
+ARGUMENTE
+---------
+::
+
+  - string look:
+    String, der in der Langbeschreibung des Lebewesens zusaetzlich ausgegeben
+    wird.
+    Kann auch ein Funktionsname sein, wenn <ob> angegeben wird (s.u.).
+  - int duration:
+    > 0: Wie lang bleibt der Extralook gueltig (in Sekunden)? Anschliessend 
+         wird er automatisch geloescht.
+    0:   Dieser Eintrag bleibt unbegrenzt gueltig.
+    < 0: Dieser Eintrag bleibt bis zum Ende/Reboot bestehen.
+  - string key:
+    Schluesselwort, unter dem der Eintrag registriert wird und mit dem man ihn
+    auch mittels RemoveExtraLook() entfernen kann. Sollte natuerlich
+    moeglichst eindeutig sein. ;-) Wenn <key> nicht angeben wird, wird der 
+    Objektname (object_name()) benutzt.
+  - string lookende:
+    String, der an das Lebewesen (nur bei Spielern) ausgegeben wird, wenn der
+    eingetragene Extralook abgelaufen ist.
+    Kann auch ein Funktionsname sein, wenn <ob> angegeben wird.
+  - object ob:
+    Wenn hier ein Objekt angegeben wird, werden <look> und <lookende> als
+    Funktonsnamen aufgefasst. Diese Funktionen werden in <ob> aufgerufen, wenn
+    der Extralook des Lebewesen angezeigt wird bzw. der eingetragene Extralook
+    abgelaufen ist. Diese Funktionen bekommen das jeweilige Lebenwesen als
+    Objekt uebergeben. Sie muessen einen String zurueckliefern, der ausgegeben
+    wird. Dieser String wird direkt so ausgeben, also selber fuer Zeilenumbruch
+    etc. sorgen!
+    WICHTIG: Das Objekt sollte nach Moeglichkeit eine Blueprint sein, da das
+    ganze nix mehr ausgibt, sobald der Clone zerstoert wird, falls hier 
+    einer angeben wird. Wenn ihr keine BP uebergebt: Wisst, was ihr tut. ;-)
+
+RUECKGABEWERTE
+--------------
+::
+
+  > 0, falls der Eintrag erfolgreich registriert wurde.
+  < 0 sonst.
+    -1: <key> war nicht gueltig und es konnte keiner ermittelt werden.
+    -2: <look> war kein gueltiger String.
+    -3: <duration> war kein Integer.
+    -4: unter <key> gibt es schon einen Eintrag.
+
+BEMERKUNGEN
+-----------
+::
+
+  Die Strings <look> und <lookende> werden vor Ausgabe durch
+  replace_personal() geschickt, daher ist die Verwendung von @WER1, @WESSEN1
+  usw. moeglich (s. replace_personal). Dies gilt aber _nicht_ fuer den Fall,
+  dass die entsprechenden Funktionen in <ob> gerufen werden, dann muessen die
+  Funktionen selber umbrechen, etc.
+  Nach replace_personal() werden die Strings noch von break_string() auf 78
+  Zeilen umgebrochen, allerdings bleiben dabei vorhandene Umbrueche erhalten.
+  Die Meldung von <lookende> bzw. der Funktionsaufruf erfolgt, wenn der
+  Extralook der Lebewesen das erste Mal nach Ablauf der Gueltigkeit aufgerufen
+  wird.
+
+BEISPIELE
+---------
+::
+
+  # einfacher Eintrag, "fuer die Ewigkeit"
+  living->AddExtraLook("@WER1 hat den Drachengott der SSP besiegt.");
+
+  # Eintrag der nach 1h automatisch weg ist.
+  living->AddExtraLook("@WER1 ist ganz mit Marmelade bedeckt.", 3600);
+
+  
+
+  # Eintrag mit bestimmten Schluessel, damit man ihn wieder entfernen kann.
+  living->AddExtraLook("@WER1 ist ganz mit Marmelade bedeckt.", 3600,
+                       "humni_marmeladen_look");
+
+  
+
+  # Mit "Ende"-Meldung, aber kein eigener Schluessel.
+  living->AddExtraLook("@WER1 ist patschnass.", 1200, 0,
+                       "Du bist endlich wieder trocken. Puuh.");
+
+  
+
+  # Mit Objekt, was den Extralook dynamisch erzeugt
+  living->AddExtraLook("get_my_special_extralook", 3600, 0, 0, this_object());
+    In diesem Fall muss this_object() natuerlich die Funktion
+    "get_my_special_extralook()" definieren, die einen String zurueckgibt.
+
+  # Mit Objekt, was den Extralook und die Endemeldung dynamisch erzeugt
+  living->AddExtraLook("get_my_special_extralook", 3600, 0,
+                       "extralookende", this_object());
+
+SIEHE AUCH
+----------
+::
+
+   RemoveExtraLook(),
+   replace_personal(), break_string()
+   P_INTERNAL_EXTRA_LOOK
+
+14.05.2007, Zesstra
+