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("details", 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.");
}
