Added public files
Roughly added all public files. Probably missed some, though.
diff --git a/obj/testmonster.c b/obj/testmonster.c
new file mode 100644
index 0000000..aebf0b4
--- /dev/null
+++ b/obj/testmonster.c
@@ -0,0 +1,89 @@
+inherit "std/npc";
+#include <properties.h>
+#include <language.h>
+
+int warte;
+
+create()
+{
+ if (!clonep(this_object())) return;
+ ::create();
+ SetProp(P_NAME, "Testmonster");
+ SetProp(P_GENDER, NEUTER);
+ SetProp(P_SHORT, "Das Testmonster - nervtoetend -");
+ SetProp(P_ALIGN, 100);
+ SetProp(P_LONG,
+ "Dies ist Testie, das Testmonster. Es hatte alle moeglichen, uebel aussehenden\n"+
+ "Testgeraete dabei. Leg Dich lieber nicht mit ihm an ...\n");
+ AddId("monster");
+ AddId("testmonster");
+ AddId("testie");
+ SetProp(P_RACE, "tester");
+ SetProp(P_LEVEL, 19);
+ SetProp(P_MAX_HP, 275);
+ SetProp(P_HP, 275);
+ SetProp(P_XP, 0);
+ SetProp(P_HANDS, ({" mit einem Spannungspruefer", 5}) );
+ SetProp(P_AC, 1);
+ seteuid(getuid(this_object()));
+ AddSpell(1,5,"Ein Testmonster schlaegt Dir ein Testheft um die Ohren.\n",
+ "Ein Testmonster schlaegt @WEN mit einem Testheft.\n");
+ AddSpell(1,8,"Ein Testmonster testet Deine Reaktion auf Hitze.\n",
+ "Ein Testmonster haelt ein Feuerzeug unter @WESSEN Hintern.\n");
+ AddSpell(1,11,"Ein Testmonster testet Deine Reaktion auf elektrischen Strom.\n",
+ "Ein Testmonster verpasst @WEM einen Elektroschock.\n");
+ AddSpell(1,15,"Ein Testmonster testet Deine Saeurebestaendigkeit.\n",
+ "Ein Testmonster ueberschuettet @WEN mit konzentrierter Saeure.\n");
+ AddSpell(1,10,"Ein Testmonster nimmt eine Blutprobe von Dir.\n",
+ "Ein Testmonster sticht @WEN mit einer gigantischen Nadel.\n");
+ SetProp(P_SPELLRATE,50);
+ warte=10;
+}
+
+give_notify(obj)
+{
+ write("Danke fuer "+obj->name(WEN, 1)+".\n");
+ return 1;
+}
+
+catch_tell(str)
+{
+ string s1, s2;
+
+ if (!str || str=="") return;
+ if (sscanf(str,"%s tritt%sTestmonster",s1,s2))
+ {
+ say_str(capitalize(name())+" sagt: Aua, wieso trittst Du mich, "+s1+"?\n");
+ return;
+ }
+ if (sscanf(str,"%s sagt: %s",s1,s2))
+ {
+ if (!s2) s2=" ";
+ s2=old_explode(s2,"\n");
+ if (sizeof(s2))
+ s2=implode(s2," ");
+ else
+ return;
+ say_str(capitalize(name())+" sagt: Wieso sagst Du \""+s2+"\", "+s1+"? \n");
+ return;
+ }
+}
+
+say_str(str)
+{
+ call_out("do_say",0,str);
+}
+
+do_say(str)
+{
+ say(str);
+}
+
+heart_beat()
+{
+ ::heart_beat();
+ warte--;
+ if (warte) return;
+ warte=8;
+ Flee();
+}