inherit "/std/room";

#include __PATH__(1)"defs.h"


string sonderfall();

protected void create() {
  ::create();

  SetProp(P_INT_SHORT, "Eine schummrige Huette");
  SetProp(P_INT_LONG, BSLF(
    "Nun gibt es hier einige Details. Du kannst sie untersuchen."));

  SetProp(P_LIGHT, 1);
  SetProp(P_INDOORS, 1);
  SetProp(P_LIGHT_TYPE, LT_GLOWING);

  AddDetail("detail", BSLF(
    "Dieses ist ein statisches Detail (der Normalfall). Es funktioniert "
    "nur fuer den Plural, den Singular haben wir ja nirgends erwaehnt."));
  AddDetail(({"plural", "singular"}), BSLF(
    "Wenn Du nicht gerade Ark heisst, musst Du nicht fuer ALLES etwas "
    "aushecken, gerade wenn Dein Raum sonst so mit unsinnigen Details "
    "zugepflastert wird, dass man Tage braucht, um den abzuforschen - das "
    "frustriert naemlich Spieler auch.\n"
    "Allerdings sollte ein gut beschriebener Raum die allermeisten Details "
    "beschreiben. Aus Gruenden der Uebersichtlichkeit verzichte ich hier "
    "allerdings mal darauf, der Lerneffekt wird dadurch ja nicht groesser."));
  AddDetail("normalfall", #'sonderfall);
}

string sonderfall() {
  return BSLF(
    "Ja, "+TP->name()+", man kann Details auch dynamisch erzeugen, indem man "
    "den Rueckgabewert einer Function oder auch einer Inline-Closure zurueck"
    "gibt. Letzteres handeln wir aber spaeter ab.");
}
