diff --git a/room/huette11.c b/room/huette11.c
new file mode 100644
index 0000000..771fee1
--- /dev/null
+++ b/room/huette11.c
@@ -0,0 +1,27 @@
+inherit "/std/room";
+
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+  ::create();
+
+  SetProp(P_INT_SHORT, "Eine schummrige Huette");
+  Set(P_INT_LONG, function string() {
+    return BSLF(sprintf(
+      "Tja, %s, da stehst Du nun. In einem Raum, der eine dynamische "
+      "Langbeschreibung hat.\n"
+      "Das ist aber nicht nur schoen, weil Du nun siehst, wie man sowas "
+      "macht, sondern auch, weil Du hier gleich gucken kannst, wie man "
+      "eine Inline-Closure verwendet.\n"
+      "Dabei handelt es sich sozusagen um eine unbenannte, anonyme Funktion, "
+      "die in ihrem Gueltigkeits- bzw. Sichtbarkeitsbereich auf die Property "
+      "beschraenkt ist, der sie zugewiesen wurde.\n"
+      "So oder so empfiehlt es sich sicherlich, \"man Set\" durchzulesen "
+      "(hier ist die Grossschreibung mal wichtig).", TPN));
+  }, F_QUERY_METHOD);
+
+  SetProp(P_LIGHT, 1);
+  SetProp(P_INDOORS, 1);
+  SetProp(P_LIGHT_TYPE, LT_GLOWING);
+}
diff --git a/room/huette9.c b/room/huette9.c
index 771fee1..9c3db3a 100644
--- a/room/huette9.c
+++ b/room/huette9.c
@@ -7,21 +7,12 @@
   ::create();
 
   SetProp(P_INT_SHORT, "Eine schummrige Huette");
-  Set(P_INT_LONG, function string() {
-    return BSLF(sprintf(
-      "Tja, %s, da stehst Du nun. In einem Raum, der eine dynamische "
-      "Langbeschreibung hat.\n"
-      "Das ist aber nicht nur schoen, weil Du nun siehst, wie man sowas "
-      "macht, sondern auch, weil Du hier gleich gucken kannst, wie man "
-      "eine Inline-Closure verwendet.\n"
-      "Dabei handelt es sich sozusagen um eine unbenannte, anonyme Funktion, "
-      "die in ihrem Gueltigkeits- bzw. Sichtbarkeitsbereich auf die Property "
-      "beschraenkt ist, der sie zugewiesen wurde.\n"
-      "So oder so empfiehlt es sich sicherlich, \"man Set\" durchzulesen "
-      "(hier ist die Grossschreibung mal wichtig).", TPN));
-  }, F_QUERY_METHOD);
+  SetProp(P_INT_LONG, BSLF(
+    "Und wieder ist der Raum nicht sonderlich interessant."));
 
   SetProp(P_LIGHT, 1);
   SetProp(P_INDOORS, 1);
   SetProp(P_LIGHT_TYPE, LT_GLOWING);
+
+  AddItem(__PATH__(1)"npc/zwerg5", REFRESH_DESTRUCT);
 }
