diff --git a/std/spellbook.c b/std/spellbook.c
index 24f824f..cda78bb 100644
--- a/std/spellbook.c
+++ b/std/spellbook.c
@@ -390,12 +390,12 @@
     // Spruch ausfuehren.
     res=(int)call_other(this_object(),fname,caster,ski);
   }
-  // TODO: Wenn die ausgefuehrte Spellfunktion eine 0 zurueckgibt, sollen jetzt
-  // noch notify_fails zum Zuge kommen koennen. Daher in diesem Fall auch 0
-  // zurueckgeben.
   if (!res || !caster)
     return 1;
 
+  if(res==NICHT_ZUSTAENDIG)
+    return 0;
+
   if (!(ski[SI_NO_ATTACK_BUSY]&NO_ATTACK_BUSY_QUERY))
   	{
 	if (!ski[SI_ATTACK_BUSY_AMOUNT])  
diff --git a/std/thing/light.c b/std/thing/light.c
index 36411b4..d02f579 100644
--- a/std/thing/light.c
+++ b/std/thing/light.c
@@ -46,7 +46,7 @@
       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
@@ -56,7 +56,35 @@
         //
         // Tiamak
         env->_set_last_content_change();
-    
+
     return Set( P_LIGHT, light, F_VALUE);
 }
 
+
+//                       ##############
+//######################## Lichttypen ############################
+//                       ##############
+
+// Lichttypen pruefen
+varargs int CheckLightType(int lighttype, int mode)
+{
+  int my_light_type = QueryProp(P_LIGHT_TYPE);
+
+  switch( mode )
+  {
+    // mind. alle angegebenen muessen vertreten sein
+    case LT_CHECK_ALL:
+      return ((lighttype & my_light_type) == lighttype);
+     // Genau diese Typen muessen vertreten sein.
+    case LT_CHECK_MATCH:
+      return (lighttype == my_light_type);
+    // Es darf kein Typ vertreten sein.
+    case LT_CHECK_NONE:
+      return !(lighttype & my_light_type);
+    // mind. einer der uebergebenen Typen muss vertreten sein
+    case LT_CHECK_ANY:
+    default:
+      return (lighttype & my_light_type);
+  }
+  return 0;
+}
diff --git a/sys/new_skills.h b/sys/new_skills.h
index 6af5cbc..808d16d 100644
--- a/sys/new_skills.h
+++ b/sys/new_skills.h
@@ -30,6 +30,7 @@
 #define ERFOLG                      1
 #define MISSERFOLG                  -1
 #define ABGEWEHRT                   2
+#define NICHT_ZUSTAENDIG            -2
 
 // ===== Properties des Gilden-Masters: =====
 
