Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/doc/beispiele/ssp/mon/dosenoeffner.c b/doc/beispiele/ssp/mon/dosenoeffner.c
new file mode 100644
index 0000000..46d627c
--- /dev/null
+++ b/doc/beispiele/ssp/mon/dosenoeffner.c
@@ -0,0 +1,24 @@
+#include <properties.h>
+#include "../files.h"
+
+inherit MMONST;
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   AddId(({"dosenoeffner", "oeffner"}));
+   AddAdjective(({"mobiler", "mobilen"}));
+   SetProp(P_SHORT, "Ein mobiler Dosenoeffner");
+   SetProp(P_LONG, "Der Dosenoeffner moechte Dir sicherlich den Kopf mit seinen scharfen\nSchneideraedern oeffnen.\n");
+   SetProp(P_NAME, "Dosenoeffner");
+   SetProp(P_GENDER, 1);
+   SetProp(P_LEVEL, 12);
+   SetProp(P_MAX_HP, 120);
+   SetProp(P_ALIGN, -123);
+   SetProp(P_BODY, 80);
+   SetProp(P_HANDS, ({" mit scharfen Schneideraedern", 50}));
+   SetProp(P_XP, 30000);
+   SetProp(P_SIZE, random(20)+40);
+   set_living_name("dosenoeffner");
+}
diff --git a/doc/beispiele/ssp/mon/eisenfresser.c b/doc/beispiele/ssp/mon/eisenfresser.c
new file mode 100644
index 0000000..ba7b041
--- /dev/null
+++ b/doc/beispiele/ssp/mon/eisenfresser.c
@@ -0,0 +1,28 @@
+#include <properties.h>
+#include "../files.h"
+
+inherit MMONST;
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   AddId(({"eisenfresser", "fresser"}));
+   SetProp(P_SHORT, "Ein Eisenfresser");
+   SetProp(P_LONG,
+   "Eisenfresser ernaehren sich ausschliesslich von Eisen, allerdings sind\n"+
+   "sie so kurzsichtig, dass sie erstmal in alles reinbeissen, was sie\n"+
+   "irgendwie wahrnehmen.\n");
+   SetProp(P_NAME, "Eisenfresser");
+   SetProp(P_GENDER, 1);
+   SetProp(P_LEVEL, 14);
+   SetProp(P_MAX_HP, 150);
+   SetProp(P_ALIGN, -215);
+   SetProp(P_BODY, 75);
+   SetProp(P_HANDS, ({" mit eisenbeschlagenen Zaehnen", 55}));
+   SetProp(P_XP, 42000);
+   SetProp(P_AGGRESSIVE, 1);
+   SetProp(P_SIZE, random(200)+50);   /* Naja, kurzsichtig halt... ;-) */
+   set_living_name("eisenfresser");
+   AddItem( OBJ("eisenklumpen") );
+}
diff --git a/doc/beispiele/ssp/mon/kampfblech.c b/doc/beispiele/ssp/mon/kampfblech.c
new file mode 100644
index 0000000..e218d01
--- /dev/null
+++ b/doc/beispiele/ssp/mon/kampfblech.c
@@ -0,0 +1,36 @@
+#include <properties.h>
+#include <combat.h>
+#include "../files.h"
+
+inherit "std/npc";
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Kampfblech");
+   SetProp(P_LONG, 
+   "Das Kampfblech sieht irgendwie aus wie ein normales Backblech, nur\n"+
+   "viel gefaehrlicher!\n");
+   SetProp(P_NAME, "Kampfblech");
+   SetProp(P_GENDER, 0);
+   AddId(({"blech", "kampfblech","\nkampfblech"}));
+   SetProp(P_LEVEL, 8);
+   SetProp(P_MAX_HP, 100);
+   SetProp(P_ALIGN, -33);
+   SetProp(P_BODY, 70);
+   SetProp(P_HANDS, ({" mit eisenharten Schlaegen", 60}));
+   SetProp(P_XP, 30000);
+   SetProp(P_SIZE, 40);
+   SetProp(P_RACE, "Metallmonster");
+   SetProp(P_VULNERABILITY, ({ DT_WATER }));
+   SetProp(P_NOCORPSE, 1);
+   SetProp(P_DIE_MSG, " faellt laut scheppernd um.\n");
+   set_living_name("kampfblech");
+}
+
+die()
+{
+   clone_object(OBJ("kampfblech"))->move(environment());
+   ::die();
+}
diff --git a/doc/beispiele/ssp/mon/knochenschaeler.c b/doc/beispiele/ssp/mon/knochenschaeler.c
new file mode 100644
index 0000000..84c1e3b
--- /dev/null
+++ b/doc/beispiele/ssp/mon/knochenschaeler.c
@@ -0,0 +1,43 @@
+#include <properties.h>
+#include <combat.h>
+#include "../files.h"
+
+inherit MMONST;
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Der Knochenschaeler");
+   SetProp(P_LONG,
+   "Der Knochenschaeler geht um, geht um\n"+
+   "Der Knochenschaeler geht um, geht um\n"+
+   "Sein Messer so lang, wie tausend grosse Zaehne\n"+
+   "Wie tausend grosse Zaehne, sein Messer so lang\n"+
+   "Er schneidet Dich in Stuecke, portionsgerecht und fein\n"+
+   "Er schneidet Dich in Stuecke, und keiner tuts ihm gleich\n"+
+   "Er schaelt die Knochen, er quaelt Deinen Geist\n"+
+   "Er schaelt die Knochen, er quaelt Deinen Geist\n"+
+   "Habet acht, habet acht! Seiet vorsichtig, habet Acht!\n"+
+   "Schau Dich um, schau Dich um\n"+
+   "Schau Dich um, Du wirst der naechste sein\n");
+   SetProp(P_NAME, "Knochenschaeler");
+   SetProp(P_GENDER, 1);
+   AddId(({"schaeler", "knochenschaeler"}));
+   SetProp(P_LEVEL, 18);
+   SetProp(P_MAX_HP, 300);
+   SetProp(P_ALIGN, -789);
+   SetProp(P_HANDS, ({" mit seinem langen Messer", 145}) );
+   SetProp(P_BODY, 110);
+   SetProp(P_XP, 220000);
+   SetProp(P_AGGRESSIVE, 1);
+   SetProp(P_SIZE, 220);
+   set_living_name("knochenschaeler");
+   clone_object(OBJ("schaelmesser"))->move(this_object());
+   command("zuecke messer");
+}
+
+QueryArticle(c, d, f)
+{
+   return ::QueryArticle(c, 1, f);
+}
diff --git a/doc/beispiele/ssp/mon/metallmonster.c b/doc/beispiele/ssp/mon/metallmonster.c
new file mode 100644
index 0000000..5482186
--- /dev/null
+++ b/doc/beispiele/ssp/mon/metallmonster.c
@@ -0,0 +1,28 @@
+inherit "std/npc";
+
+#include <properties.h>
+#include <combat.h>
+#include "../files.h"
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_NOCORPSE, 1);
+   SetProp(P_RACE, "Metallmonster");
+   SetProp(P_DIE_MSG, " zerfaellt in seine Bestandteile.\n");
+   SetProp(P_VULNERABILITY, ({ DT_WATER }));
+}
+
+die()
+{
+   create_blech();
+   ::die();
+}
+
+create_blech()
+{
+   object b;
+   b = clone_object(OBJ("blech"));
+   b->move(environment(this_object()));
+}
diff --git a/doc/beispiele/ssp/mon/ork.c b/doc/beispiele/ssp/mon/ork.c
new file mode 100644
index 0000000..975e596
--- /dev/null
+++ b/doc/beispiele/ssp/mon/ork.c
@@ -0,0 +1,26 @@
+#include <properties.h>
+#include "../files.h"
+
+inherit "std/npc";
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein grimmiger Ork");
+   SetProp(P_LONG, "Der Ork schaut Dich unfreundlich an und wedelt mit seinem Krummschwert.\n");
+   SetProp(P_NAME, "Ork");
+   SetProp(P_GENDER, 1);
+   AddId("ork");
+   SetProp(P_RACE, "Ork");
+   SetProp(P_LEVEL, 10);
+   SetProp(P_MAX_HP, 130);
+   SetProp(P_ALIGN, -250);
+   SetProp(P_XP, 90000);
+   SetProp(P_BODY, 50);
+   SetProp(P_SIZE, random(20)+110);
+   set_living_name("ork");
+   seteuid(getuid(this_object()));
+   AddItem(OBJ("krummschwert"),CLONE_WIELD);
+   AddItem(OBJ("orkhose"),CLONE_WEAR);
+}
diff --git a/doc/beispiele/ssp/mon/orkchef.c b/doc/beispiele/ssp/mon/orkchef.c
new file mode 100644
index 0000000..2d6e6cd
--- /dev/null
+++ b/doc/beispiele/ssp/mon/orkchef.c
@@ -0,0 +1,29 @@
+inherit "std/npc";
+
+#include <properties.h>
+#include "../files.h"
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Anfuehrer der Orks");
+   SetProp(P_LONG, "Dies ist ein fetter, stinkender Ork-Haeuptling, der Dir alles \nandere als freundlich gesonnen ist.\n");
+   SetProp(P_NAME, "Ork");
+   SetProp(P_GENDER, 1);
+   AddId(({"ork", "anfuehrer", "haeuptling"}));
+   SetProp(P_RACE, "Ork");
+   SetProp(P_LEVEL, 16);
+   SetProp(P_MAX_HP, 220);
+   SetProp(P_ALIGN, -280);
+   SetProp(P_XP, 160000);
+   SetProp(P_BODY, 60);
+   SetProp(P_SIZE, random(20)+130);
+   set_living_name("orkchef");
+   seteuid(getuid(this_object()));
+   AddItem(OBJ("saebel"),CLONE_WIELD);
+   AddItem(OBJ("orkhose"),CLONE_WEAR);
+   AddItem(OBJ("orkhelm"),CLONE_WEAR);
+}
+
+      
diff --git a/doc/beispiele/ssp/mon/stahldrache.c b/doc/beispiele/ssp/mon/stahldrache.c
new file mode 100644
index 0000000..b4efcac
--- /dev/null
+++ b/doc/beispiele/ssp/mon/stahldrache.c
@@ -0,0 +1,39 @@
+#include <properties.h>
+#include <combat.h>
+#include "../files.h"
+
+inherit MMONST;
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Stahldrache");
+   SetProp(P_LONG,
+   "Der Stahldrache ist ein ernstzunehmender Gegner, gepanzert mit Platten\n"+
+   "aus reinem Stahl ist es schwer, ihm irgendwie Schaden zuzufuegen.\n");
+   SetProp(P_NAME, ({"Stahldrache", "Stahldrachen", "Stahldrachen", "Stahldrachen"}));
+   SetProp(P_GENDER, 1);
+   AddId(({"drache", "stahldrache", "drachen", "stahldrachen"}));
+   SetProp(P_RACE, "Drache");
+   SetProp(P_LEVEL, 20);
+   SetProp(P_MAX_HP, 400);
+   SetProp(P_ALIGN, -250);
+   SetProp(P_HANDS, ({" mit staehlernen Klauen", 150}));
+   SetProp(P_BODY, 130);
+   SetProp(P_XP, 300000);
+   SetProp(P_SIZE, random(50)+250);
+   SetChats(40, ({
+      "Der Stahldrache schnaubt laut.\n",
+      "Der Stahldrache schaut Dich mit staehlernem Blick an.\n",
+      "Der Stahldrache waelzt sich herum.\n",
+      "Der Stahldrache spuckt etwas stahlblaues Feuer.\n",
+   }) );
+   AddSpell(1, 115, "Der Stahldrache spuckt stahlblaues Feuer auf Dich.\n",
+  	            "Der Stahldrache spuckt stahlblaues Feuer auf @WEN.\n",
+	    DT_FIRE);
+   SetProp(P_SPELLRATE,20);
+   clone_object(OBJ("gummistiefel"))->move(this_object());
+   clone_object(OBJ("stahlschwert"))->move(this_object());
+   set_living_name("stahldrache");
+}
diff --git a/doc/beispiele/ssp/mon/titanwalze.c b/doc/beispiele/ssp/mon/titanwalze.c
new file mode 100644
index 0000000..23113e6
--- /dev/null
+++ b/doc/beispiele/ssp/mon/titanwalze.c
@@ -0,0 +1,30 @@
+#include <properties.h>                    
+#include <combat.h>
+#include "../files.h"
+
+inherit MMONST;
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Eine Titanwalze");
+   SetProp(P_LONG, "Pass nur auf, dass diese Titanwalze Dir nicht ueber die Zehen rollt.\nBei diesem Gewicht koennte das auesserst unangenehme Folgen haben.\n");
+   SetProp(P_NAME, "Titanwalze");
+   SetProp(P_GENDER, 2);
+   AddId(({"walze", "titanwalze"}));
+   SetProp(P_LEVEL, 14);
+   SetProp(P_MAX_HP, 170);
+   SetProp(P_ALIGN, 120);
+   SetProp(P_XP, 51000);
+   SetProp(P_BODY, 90);
+   SetProp(P_HANDS, ({" mit wuchtigen Schlaegen", 60}));
+   SetProp(P_SIZE, 210);
+   SetProp(P_DIE_MSG, " zerfaellt in ihre Bestandteile.\n");
+   SetAttackChats(30, ({
+   "Die Titanwalze versucht Dich platt zu walzen.\n",
+   "Die Titanwalze macht: Rumpel, polter ...\n",
+   "Die Titanwalze roehrt.\n"}));
+   set_living_name("titanwalze");
+   AddItem(OBJ("titanring")); 
+}
diff --git a/doc/beispiele/ssp/mon/troll.c b/doc/beispiele/ssp/mon/troll.c
new file mode 100644
index 0000000..8eb1043
--- /dev/null
+++ b/doc/beispiele/ssp/mon/troll.c
@@ -0,0 +1,28 @@
+#include <properties.h>
+#include "../files.h"
+
+inherit "std/npc";
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Troll");
+   SetProp(P_LONG, "Ein Troll wie aus dem Bilderbuch: Gross, haesslich und dumm.\n");
+   SetProp(P_NAME, "Troll");
+   SetProp(P_GENDER, 1);
+   SetProp(P_RACE, "Troll");
+   AddId("troll");
+   SetProp(P_LEVEL, 15);
+   SetProp(P_MAX_HP, 200);
+   SetProp(P_ALIGN, -417);
+   SetProp(P_XP, 120000);
+   SetProp(P_BODY, 35);
+   SetProp(P_SIZE, random(40)+199);
+   set_living_name("troll");
+   seteuid(getuid(this_object()));
+   AddItem(OBJ("trolldolch"),CLONE_WIELD);
+   AddItem(OBJ("steinring"),CLONE_WEAR);
+   AddItem(OBJ("lkhemd"),CLONE_WEAR);
+}
+      
diff --git a/doc/beispiele/ssp/mon/trollmops.c b/doc/beispiele/ssp/mon/trollmops.c
new file mode 100644
index 0000000..5830796
--- /dev/null
+++ b/doc/beispiele/ssp/mon/trollmops.c
@@ -0,0 +1,31 @@
+#include <properties.h>
+#include "../files.h"
+
+inherit "std/npc";
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Trollmops");
+   SetProp(P_LONG, 
+   "Dies ist einer der sagenumwobenen, blutruenstigen Trollmoepse. Hervor-\n"+
+   "gegangen aus der misslungenen Kreuzung zwischen einem Troll und einem\n"+
+   "Mops, terrorisieren diese grausamen Bestien jetzt die Welt. Flieh, so-\n"+
+   "lange Du noch kannst.\n");
+   SetProp(P_NAME, "Trollmops");
+   SetProp(P_GENDER, 1);
+   AddId("trollmops");
+   AddId("troll");
+   AddId("mops");
+   SetProp(P_RACE, "Troll");
+   SetProp(P_LEVEL, 20);
+   SetProp(P_MAX_HP, 350);
+   SetProp(P_ALIGN, -735 - random(100));
+   SetProp(P_HANDS, ({" mit blutverschmierten Krallen", 200 +random(10)}));
+   SetProp(P_XP, 350000);
+   SetProp(P_BODY, 140 + random(40));
+   SetProp(P_SIZE, random(20)+105);  /* Da sind die Groessen der Eltern drin */
+   set_living_name("trollmops");
+   SetProp(P_AGGRESSIVE, 1);
+}