Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/doc/beispiele/ssp/obj/blech.c b/doc/beispiele/ssp/obj/blech.c
new file mode 100644
index 0000000..5c5c2ec
--- /dev/null
+++ b/doc/beispiele/ssp/obj/blech.c
@@ -0,0 +1,16 @@
+#include <properties.h>
+
+inherit "/std/thing";
+
+create() {
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein altes Blech");
+  SetProp(P_LONG, "Das sind die Ueberreste eines Metallmonsters.\n");
+  SetProp(P_NAME, "Blech");
+  SetProp(P_GENDER, 0);
+  AddId("blech");
+  AddAdjective(({"alt", "altes"}));
+  SetProp(P_WEIGHT, 1100);
+  SetProp(P_VALUE, random(QueryProp(P_MAX_HP))+100);
+}
diff --git a/doc/beispiele/ssp/obj/eisenklumpen.c b/doc/beispiele/ssp/obj/eisenklumpen.c
new file mode 100644
index 0000000..bac122b
--- /dev/null
+++ b/doc/beispiele/ssp/obj/eisenklumpen.c
@@ -0,0 +1,16 @@
+#include <properties.h>
+
+inherit "/std/thing";
+
+create() {
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Klumpen Eisen");
+  SetProp(P_LONG, "Sieht aus, als haette da schon jemand dran rumgenagt. Derjenige muss\naber sehr stabile Zaehne gehabt haben.\n");
+  SetProp(P_NAME, "Klumpen");
+  SetProp(P_GENDER, 1);
+  AddId(({"klumpen", "eisen", "klumpen eisen"}));
+  SetProp(P_MATERIAL, MAT_IRON);
+  SetProp(P_WEIGHT, 2438);
+  SetProp(P_VALUE, random(750));
+}
diff --git a/doc/beispiele/ssp/obj/gummistiefel.c b/doc/beispiele/ssp/obj/gummistiefel.c
new file mode 100644
index 0000000..ea4728e
--- /dev/null
+++ b/doc/beispiele/ssp/obj/gummistiefel.c
@@ -0,0 +1,37 @@
+#include <properties.h>
+#include <language.h>
+#include <combat.h>
+#include "../files.h"
+ 
+inherit "std/armour";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Paar Gummistiefel");
+   SetProp(P_LONG, "Damit bekommt man sicher keine nassen Fuesse.\n");
+   SetProp(P_NAME, "Paar Gummistiefel");
+   SetProp(P_GENDER, 0);
+   AddId(({"stiefel", "gummistiefel", "paar", "paar stiefel"}));
+   SetProp(P_ARMOUR_TYPE, AT_BOOT);
+   SetProp(P_AC, 0);
+   SetProp(P_WEIGHT, 700);
+   SetProp(P_VALUE, 120);
+   SetProp(P_REMOVE_FUNC, this_object());
+}
+
+RemoveFunc()
+{
+   object env;
+   if ((env=environment(QueryProp(P_WORN)))==find_object(L2("m2x1")) ||
+       env==find_object(L2("m1x1")))
+   {
+      write("Das waere keine so tolle Idee hier die Gummistiefel auszuziehen.\n");
+      return 0;
+   }
+   return 1;
+}
+       
+
+
diff --git a/doc/beispiele/ssp/obj/kampfblech.c b/doc/beispiele/ssp/obj/kampfblech.c
new file mode 100644
index 0000000..63c953a
--- /dev/null
+++ b/doc/beispiele/ssp/obj/kampfblech.c
@@ -0,0 +1,22 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/armour";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein totes Kampfblech");
+  SetProp(P_LONG, "Sieht aus wie ein normales Kampfblech, nur tot. Ausserdem ueberrascht Dich der merkwuerdige Griff.\n");
+  SetProp(P_NAME, "Kampfblech");
+  SetProp(P_NAME_ADJ, "tot");
+  SetProp(P_GENDER, 0);
+  SetProp(P_ARMOUR_TYPE, AT_SHIELD);
+  SetProp(P_AC, 12);
+  SetProp(P_WEIGHT, 850);
+  SetProp(P_VALUE, 420);
+  SetProp(P_MATERIAL, MAT_MISC_METAL);
+  SetProp(P_INFO, "Ziemlicher Schwachsinn dieses Objekt, oder nicht?\n");
+  AddId(({"schild", "blech", "kampfblech", "totes kampfblech"}));
+  AddDetail("griff", "Mit Hilfe des Griffs kannst Du das tote Kampfblech als Schild benutzen.\n");
+}
diff --git a/doc/beispiele/ssp/obj/krummschwert.c b/doc/beispiele/ssp/obj/krummschwert.c
new file mode 100644
index 0000000..659ff02
--- /dev/null
+++ b/doc/beispiele/ssp/obj/krummschwert.c
@@ -0,0 +1,22 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/weapon";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Krummschwert");
+  SetProp(P_LONG, "Das Krummschwert sieht aus, als haette es einmal einem Ork gehoert.\n");
+  SetProp(P_NAME, "Krummschwert");
+  SetProp(P_GENDER, 0);
+  SetProp(P_WC, 130 + random(15));
+  SetProp(P_VALUE, 1200 + random(200));
+  SetProp(P_WEIGHT, 1100 + random(100));
+  SetProp(P_WEAPON_TYPE, WT_SWORD);
+  SetProp(P_DAM_TYPE, DT_SLASH);
+  SetProp(P_NR_HANDS, 1);
+  SetProp(P_MATERIAL, MAT_MISC_METAL);
+  AddId("schwert");
+  AddId("krummschwert");
+}
diff --git a/doc/beispiele/ssp/obj/lkhemd.c b/doc/beispiele/ssp/obj/lkhemd.c
new file mode 100644
index 0000000..5c381bc
--- /dev/null
+++ b/doc/beispiele/ssp/obj/lkhemd.c
@@ -0,0 +1,19 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/armour";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein leichtes Kettenhemd");
+  SetProp(P_LONG, "Ein nicht sonderlich gut gearbeitetes Kettenhemd. Anziehen kann man\nes aber trotzdem.\n");
+  SetProp(P_NAME, "Kettenhemd");
+  SetProp(P_GENDER, 0);
+  SetProp(P_ARMOUR_TYPE, AT_ARMOUR);
+  SetProp(P_AC, 18);
+  SetProp(P_WEIGHT, 1700);
+  SetProp(P_VALUE, 1200 +random(100));
+  SetProp(P_MATERIAL, MAT_MISC_METAL);
+  AddId(({"kettenhemd", "hemd"}));
+}
diff --git a/doc/beispiele/ssp/obj/orkhelm.c b/doc/beispiele/ssp/obj/orkhelm.c
new file mode 100644
index 0000000..36d6a8b
--- /dev/null
+++ b/doc/beispiele/ssp/obj/orkhelm.c
@@ -0,0 +1,20 @@
+inherit "std/armour";
+ 
+#include <properties.h>                    
+#include <combat.h>
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Orkhelm");
+  SetProp(P_LONG, "Ein stabiler Helm, der schon ausgiebig von einem stinkenden Ork\ngetragen wurde.\n");
+  SetProp(P_NAME, "Orkhelm");
+  SetProp(P_GENDER, 1);
+  SetProp(P_ARMOUR_TYPE, AT_HELMET);
+  SetProp(P_AC, 7);
+  SetProp(P_WEIGHT, 450);
+  SetProp(P_VALUE, 350);
+  SetProp(P_MATERIAL, ([MAT_MISC_METAL:95, MAT_SLIME:5]));
+  AddId(({"helm", "orkhelm"}));
+}
diff --git a/doc/beispiele/ssp/obj/orkhose.c b/doc/beispiele/ssp/obj/orkhose.c
new file mode 100644
index 0000000..8ba0056
--- /dev/null
+++ b/doc/beispiele/ssp/obj/orkhose.c
@@ -0,0 +1,19 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/armour";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Eine Orkhose");
+  SetProp(P_LONG, "Die Beinbekleidung von Orks.\n");
+  SetProp(P_NAME, "Hose");
+  SetProp(P_GENDER, 2);
+  SetProp(P_ARMOUR_TYPE, AT_TROUSERS);
+  SetProp(P_AC, 7);
+  SetProp(P_WEIGHT, 555);
+  SetProp(P_VALUE, 480 + random(40));
+  SetProp(P_MATERIAL, ([MAT_CLOTH:99, MAT_SHIT:1]));
+  AddId(({"hose", "hosen", "orkhose", "orkhosen"}));
+}
diff --git a/doc/beispiele/ssp/obj/saebel.c b/doc/beispiele/ssp/obj/saebel.c
new file mode 100644
index 0000000..3aec958
--- /dev/null
+++ b/doc/beispiele/ssp/obj/saebel.c
@@ -0,0 +1,23 @@
+inherit "std/weapon";
+
+#include <properties.h>                    
+#include <combat.h>
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein schartiger Saebel");
+  SetProp(P_LONG, "Der Saebel ist schartig, koennte aber trotzdem recht brauchbar sein.\n");
+  SetProp(P_NAME, "Saebel"); 
+  SetProp(P_GENDER, 1);
+  SetProp(P_WC, 144);
+  SetProp(P_VALUE, 1525);
+  SetProp(P_WEIGHT, 1264);
+  SetProp(P_WEAPON_TYPE, WT_SWORD);
+  SetProp(P_DAM_TYPE, DT_SLASH);
+  SetProp(P_NR_HANDS, 1);
+  SetProp(P_MATERIAL, MAT_MISC_METAL);
+  AddId("saebel");
+  AddAdjective(({"schartig", "schartiger", "schartigen"}));
+}
diff --git a/doc/beispiele/ssp/obj/schaelmesser.c b/doc/beispiele/ssp/obj/schaelmesser.c
new file mode 100644
index 0000000..2b0b686
--- /dev/null
+++ b/doc/beispiele/ssp/obj/schaelmesser.c
@@ -0,0 +1,25 @@
+inherit "std/weapon";
+
+#include <combat.h>
+#include <properties.h>
+
+create()
+{
+  if (!clonep(this_object())) return;
+   ::create();
+   SetProp(P_SHORT, "Ein Knochenschaelmesser");
+   SetProp(P_LONG, 
+	   "Ein Messer so lang, wie tausend grosse Zaehne\n"+
+	   "Wie tausend grosse Zaehne, ein Messer so lang\n"+
+	   "So lang, wie tausend grosse, grosse Zaehne\n");
+   SetProp(P_NAME, "Knochenschaelmesser");
+   SetProp(P_GENDER, 0);
+   AddId(({"knochenschaelmesser", "schaelmesser", "messer"}));
+   SetProp(P_WC, 145);
+   SetProp(P_NR_HANDS, 1),
+   SetProp(P_WEAPON_TYPE, WT_KNIFE);
+   SetProp(P_DAM_TYPE, DT_SLASH);
+   SetProp(P_VALUE, 1610);
+   SetProp(P_WEIGHT, 1150);
+   SetProp(P_MATERIAL, MAT_MISC_METAL);
+}
diff --git a/doc/beispiele/ssp/obj/stahlschwert.c b/doc/beispiele/ssp/obj/stahlschwert.c
new file mode 100644
index 0000000..4446898
--- /dev/null
+++ b/doc/beispiele/ssp/obj/stahlschwert.c
@@ -0,0 +1,21 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/weapon";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Stahlschwert");
+  SetProp(P_LONG, "Dieses Schwert hat eine Klinge aus reinem Stahl, mit der man seine Gegner\nwohl ziemlich gut niedermachen kann. Das Schwert ist recht schwer und\nlaesst sich nur mit zwei Haenden fuehren.\n");
+  SetProp(P_NAME, "Stahlschwert");
+  SetProp(P_GENDER, 0);
+  SetProp(P_WC, 175);
+  SetProp(P_VALUE, 1750 + random(100));
+  SetProp(P_WEIGHT, 2926);
+  SetProp(P_WEAPON_TYPE, WT_SWORD);
+  SetProp(P_DAM_TYPE, DT_SLASH);
+  SetProp(P_NR_HANDS, 2);
+  SetProp(P_MATERIAL, MAT_STEEL);
+  AddId(({"schwert", "stahlschwert", "\nsspstahlschwert"}));
+}
diff --git a/doc/beispiele/ssp/obj/steinring.c b/doc/beispiele/ssp/obj/steinring.c
new file mode 100644
index 0000000..5da09a7
--- /dev/null
+++ b/doc/beispiele/ssp/obj/steinring.c
@@ -0,0 +1,19 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/armour";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Steinring");
+  SetProp(P_LONG, "Ein kleiner Ring, voellig aus einem grauen Stein.\n");
+  SetProp(P_NAME, "Steinring");
+  SetProp(P_GENDER, 1);
+  SetProp(P_ARMOUR_TYPE, AT_RING);
+  SetProp(P_AC, 2);
+  SetProp(P_WEIGHT, 270);
+  SetProp(P_VALUE, 300 +random(150));
+  SetProp(P_MATERIAL, MAT_MISC_STONE);
+  AddId(({"ring", "steinring"}));
+}
diff --git a/doc/beispiele/ssp/obj/titanring.c b/doc/beispiele/ssp/obj/titanring.c
new file mode 100644
index 0000000..389de66
--- /dev/null
+++ b/doc/beispiele/ssp/obj/titanring.c
@@ -0,0 +1,18 @@
+inherit "std/armour";
+
+#include <properties.h>
+#include <combat.h>
+
+create()
+{
+  ::create();
+  SetProp(P_SHORT, "Ein Titanring");
+  SetProp(P_LONG, "Ein Ring aus Titan.\n");
+  SetProp(P_NAME, "Titanring");
+  SetProp(P_GENDER, 1);
+  AddId(({"titanring", "ring"}));
+  SetProp(P_ARMOUR_TYPE, AT_RING);
+  SetProp(P_AC, 2);
+  SetProp(P_WEIGHT, 280);
+  SetProp(P_VALUE, 520);
+}
diff --git a/doc/beispiele/ssp/obj/trolldolch.c b/doc/beispiele/ssp/obj/trolldolch.c
new file mode 100644
index 0000000..fd06092
--- /dev/null
+++ b/doc/beispiele/ssp/obj/trolldolch.c
@@ -0,0 +1,21 @@
+#include <properties.h>
+#include <combat.h>
+inherit "std/weapon";
+ 
+create()
+{
+  if (!clonep(this_object())) return;
+  ::create();
+  SetProp(P_SHORT, "Ein Trolldolch");
+  SetProp(P_LONG, "Ein langer, scharfer Dolch, dem Gestank nach muss er einem Troll\ngehoert haben.\n");
+  SetProp(P_NAME, "Trolldolch");
+  SetProp(P_GENDER, 1);
+  SetProp(P_WC, 119);
+  SetProp(P_VALUE, 1000 +random(400));
+  SetProp(P_WEIGHT, 500 +random(50));
+  SetProp(P_WEAPON_TYPE, WT_KNIFE);
+  SetProp(P_DAM_TYPE, DT_PIERCE);
+  SetProp(P_NR_HANDS, 1);
+  SetProp(P_MATERIAL, MAT_MISC_METAL);
+  AddId(({"dolch", "trolldolch"}));
+}