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/ModifySkill b/doc/sphinx/man/lfun/ModifySkill
new file mode 100644
index 0000000..70c33ba
--- /dev/null
+++ b/doc/sphinx/man/lfun/ModifySkill
@@ -0,0 +1,98 @@
+
+ModifySkill()
+*************
+
+
+FUNKTION
+========
+
+ public varargs void ModifySkill(string sname, mixed val,
+ int diff, string gilde)
+
+
+DEFINIERT IN
+============
+
+ /std/living/skills.c
+
+
+ARGUMENTE
+=========
+
+ string sname der zu aendernde Skill
+ mixed val Aenderungswert: int fuer SI_SKILLABILITY, sonst mapping
+ int diff Schwierigkeit (optional: default ist existierendes diff)
+ string gilde Gilde (optional: default ist eigene Gilde)
+
+
+BESCHREIBUNG
+============
+
+ Mit der Methode kann man die Werte eines Skills/Spells veraendern. Dabei
+ wird ein Skill immer in ein Mapping umgewandelt (Skills/Spells koennen
+ auch einfach nur ihren Skillwert enthalten, diese ist aequivalent zu
+ einem Mapping mit ([SI_SKILLABILITY:<Skillwert>]).
+
+ Ist 'val' ein int, wird dieses als SI_SKILLABILITY gesetzt. Falls der
+ Skill nur ein int war, wird ein 'diff'!=0 als SI_DIFFICULTY gesetzt.
+
+ Ist 'val' ein Mapping, wird dieses zum Skillmapping addiert.
+
+
+
+ Etwaige SI_SKILLABILITY-Aenderungen laufen danach noch durch LimitAbility.
+
+
+BEISPIELE
+=========
+
+ // #1a: Lerne einen Spell/Skill (einer Gilde)
+ caster->ModifySkill("feuerball", MAX_ABILITY, 100, "abenteurer")
+ // #1b: ... oder ...
+ caster->ModifySkill("feuerball", ([SI_SKILLABILITY: MAX_ABILITY]), 100,
+ "abenteurer")
+ // #1c: ... oder fuer einen Abenteurer ...
+ caster->ModifySkill("feuerball", ([SI_SKILLABILITY: MAX_ABILITY]), 100);
+
+
+
+ // #2: Setze eine Skill-Funktion fuer einen Kampfskill des Klerus
+ this_player()->ModifySkill(FIGHT(WT_CLUB),
+ ([SI_SKILLFUNC: "Keulenkampf",
+ SI_DIFFICULTY: 100]),
+ 100, "klerus");
+
+ // #3: Speichere im Skill (also Spieler) eine Option fuer diesen Skill
+ // Vorteil: dieser Eintrag wird dem Spell immer uebergeben
+ caster->ModifySkill("blitz", (["klerus_spell_option": 2]));
+
+ (Code in /doc/beispiele/testobjekte/modifyskillspell_test)
+ // #4: Lerne einen unabhaengigen Spell: ACHTUNG
+ // dieser Spell funktioniert nur solange, wie die Closure existiert,
+ // SI_SKILLABILITY und Spell bleiben jedoch im Spieler gespeichert (!)
+ this_player()->ModifySkill("fnrx",
+ ([SI_CLOSURE:
+ function int (object caster, string skill, mapping sinf) {
+ caster->LearnSkill("fnrx", 1);
+ tell_object(caster, "Peng! Dein Skillwert steigt auf "+
+ caster->QuerySkillAbility("fnrx")+".\n");
+ return ERFOLG;
+ },
+ SI_SKILLABILITY: 8432]),
+ 100,
+ "ANY");
+
+
+SIEHE AUCH
+==========
+
+ Skills Lernen: LearnSkill, LimitAbility
+ * Nutzung: UseSpell, UseSkill
+ * Abfragen: QuerySkill, QuerySkillAbility
+ * Modifikation: ModifySkillAttribute, QuerySkillAttribute,
+ QuerySkillAttributeModifier, RemoveSkillAttributeModifier
+ * Properties: P_SKILL_ATTRIBUTES, P_SKILL_ATTRIBUTE_OFFSETS
+ * sonstig: spruchermuedung
+ * Properties: P_NEWSKILLS
+
+3. Okt 2011 Gloinson