Added public files
Roughly added all public files. Probably missed some, though.
diff --git a/std/thing/light.c b/std/thing/light.c
new file mode 100644
index 0000000..36411b4
--- /dev/null
+++ b/std/thing/light.c
@@ -0,0 +1,62 @@
+// MorgenGrauen MUDlib
+//
+// thing/description.c -- Lichtsystemkomponenten fuer Standardobjekte
+//
+// $Id: description.c 7635 2010-08-19 21:21:30Z Zesstra $
+
+#pragma strict_types
+#pragma save_types,rtt_checks
+#pragma range_check
+#pragma no_clone
+#pragma pedantic
+
+#define NEED_PROTOTYPES
+#include <thing/properties.h>
+#include <thing/language.h>
+#include <hook.h>
+#undef NEED_PROTOTYPES
+
+#include <thing/lighttypes.h>
+#include <properties.h>
+
+// #####################
+//######################## System-Funktionen ############################
+// #####################
+
+// Objekt erzeugen
+protected void create()
+{
+ Set( P_LIGHT, 0 );
+ Set( P_LIGHT_TYPE, LT_MISC);
+}
+
+protected void create_super() {
+ set_next_reset(-1);
+}
+
+// Lichtsy ... sys ...
+static int _query_total_light() { return QueryProp(P_LIGHT); }
+
+static int _set_light( int light )
+{
+ object env = this_object();
+
+ // TODO: Temporaer Lichtlevel in geeignete Wertefenster zwingen.
+ if (light > 100)
+ light = 100;
+ else if (light < -100)
+ light = -100;
+
+ while ( objectp(env = environment(env)) )
+ // Ja. Man ruft die _set_xxx()-Funktionen eigentlich nicht direkt auf.
+ // Aber das Lichtsystem ist schon *so* rechenintensiv und gerade der
+ // P_LAST_CONTENT_CHANGE-Cache wird *so* oft benoetigt, dass es mir
+ // da um jedes bisschen Rechenzeit geht.
+ // Der Zweck heiligt ja bekanntlich die Mittel. ;-)
+ //
+ // Tiamak
+ env->_set_last_content_change();
+
+ return Set( P_LIGHT, light, F_VALUE);
+}
+