Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/std/inpc/items.c b/std/inpc/items.c
new file mode 100644
index 0000000..fafdd04
--- /dev/null
+++ b/std/inpc/items.c
@@ -0,0 +1,78 @@
+// MorgenGrauen MUDlib
+//
+// inpc/items.c -- Die richtige Ausruestung tragen
+//
+// $Id: items.c 6571 2007-10-21 14:41:10Z Zesstra $
+#pragma strong_types
+#pragma save_types
+#pragma range_check
+#pragma no_clone
+#pragma pedantic
+
+#define NEED_PROTOTYPES
+
+#include <thing.h>
+#include <inpc.h>
+#include <properties.h>
+#include <moving.h>
+
+protected void create() {
+  SetProp(P_ITEMS,({0}));
+}
+
+protected void create_super() {
+  set_next_reset(-1);
+}
+
+void AddWeapon(string nm, string path) {
+  object ob;
+  mixed *it;
+  
+  if (!path || !nm) return;
+  if (ob=clone_object(path)) {
+    ob->move(this_object(),M_NOCHECK);
+    command("zuecke "+nm);
+  }
+  it=QueryProp(P_ITEMS);
+  if (!pointerp(it) || !sizeof(it)) it=({0});
+  it[0]=({ob,path,nm});
+  SetProp(P_ITEMS,it);
+}
+
+void AddArmour(string nm, string path) {
+  object ob;
+  mixed *it;
+  
+  if (!path || !nm) return;
+  if (ob=clone_object(path)) {
+    ob->move(this_object(),M_NOCHECK);
+    command("zieh "+nm+" an");
+  }
+  it=QueryProp(P_ITEMS);
+  if (!pointerp(it) || !sizeof(it)) it=({0});
+  it+=({ob,path,nm});
+  SetProp(P_ITEMS,it);
+}
+
+void reset() {
+  mixed *it,x;
+  int i;
+  object ob;
+  
+  if (!pointerp(it=QueryProp(P_ITEMS))) return;
+  for (i=sizeof(it)-1;i>=0;i--) {
+    x=it[i];
+    if (!pointerp(x) || sizeof(x)<3) continue;
+    if (!objectp(x[0])) {
+      if (ob=clone_object(x[1]))
+	ob->move(this_object(),M_NOCHECK);
+      x[0]=ob;
+    }
+    if (objectp(x[0])) {
+      if (i)
+	command("zieh "+x[2]+" an");
+      else
+	command("zuecke "+x[2]);
+    }
+  }
+}