diff --git a/doc/props/P_STORE_CONSUME b/doc/props/P_STORE_CONSUME
index 7b65641..8a9afd9 100644
--- a/doc/props/P_STORE_CONSUME
+++ b/doc/props/P_STORE_CONSUME
@@ -1,51 +1,69 @@
-NAME:
-	P_STORE_CONSUME			"store_consume"
 
-DEFINIERT IN:
-	/sys/bank.h
+P_STORE_CONSUME
+***************
 
-BESCHREIBUNG:
-	Diese Property ist entscheidend dafuer, wieviel Prozent an Objekten
-	bei jedem Reset in einem Lager eines Ladens vernichtet werden. Dies
-	geschieht aus Speicher- und Laggruenden. Es verbleibt dabei jedoch
-	eine Grundmenge an Objekten, deren Anzahl in der Property
-	P_MIN_STOCK festgehalten ist. Standardwert fuer P_STORE_CONSUME ist
-	hierbei 30%, aber in oft benutzten Laeden kann man dort ruhig einen
-	hoeheren Wert eintragen. Erlaubt sind Werte zwischen 0% und 100%.
-	Aufgeraeumt werden jedoch keine Objekte, die mittels AddItem() im
-	Lager eingebunden wurden. Mittels der Ladenfunktion AddFixedObject()
-	als staendig verfuegbar markierte Objekte werden natuerlich auch
-	nicht beruecksichtigt.
-	Beide hier erwaehnten Properties sollten ueberigens nur mittels
-	QueryProp/SetProp ausgelesen bzw. veraendert werden.
 
-BEISPIEL:
-	Ein eigener haeufig benutzter Laden koennte ein Lager in folgender
-	Form erhalten:
-	  // myStore
-	  #include <bank.h>
-	  inherit "std/store";
-	  void create()
-	  { ::create();
-	    SetProp(P_STORE_CONSUME,90);
-	    // keine weiteren Beschreibungen, Spieler sollen da drin
-	    // schliesslich nicht rumwuseln
-	  }
-	Um das Lager dem Laden zuzuweisen, nutzt man folgendes:
-	  // myShop
-	  inherit "std/laden";
-	  void create()
-	  { ::create();
-	    SetStorageRoom("pfad/myStore");
-	    // Beschreibungen folgen
-	    ...
-	  }
-	Es werden hierbei waehrend jedes Lager-Resets 90% der im Lager
-	befindlichen Objekte vernichtet.
+NAME
+====
 
-SIEHE AUCH:
-	P_MIN_STOCK, SetStorageRoom(), /std/store.c, /std/shop.c
-	AddItem(), RemoveItem(), AddFixedObject(), RemoveFixedObject()
+   P_STORE_CONSUME                 "store_consume"
 
-----------------------------------------------------------------------------
-Last modified: 19-Jun-2015, Arathorn 
+
+DEFINIERT IN
+============
+
+   /sys/bank.h
+
+
+BESCHREIBUNG
+============
+
+   Diese Property ist entscheidend dafuer, wieviel Prozent an Objekten
+   bei jedem Reset in einem Lager eines Ladens vernichtet werden. Dies
+   geschieht aus Speicher- und Laggruenden. Es verbleibt dabei jedoch
+   eine Grundmenge an Objekten, deren Anzahl in der Property
+   P_MIN_STOCK festgehalten ist. Standardwert fuer P_STORE_CONSUME ist
+   hierbei 30%, aber in oft benutzten Laeden kann man dort ruhig einen
+   hoeheren Wert eintragen. Erlaubt sind Werte zwischen 0% und 100%.
+   Aufgeraeumt werden jedoch keine Objekte, die mittels AddItem() im
+   Lager eingebunden wurden. Mittels der Ladenfunktion AddFixedObject()
+   als staendig verfuegbar markierte Objekte werden natuerlich auch
+   nicht beruecksichtigt.
+   Beide hier erwaehnten Properties sollten ueberigens nur mittels
+   QueryProp/SetProp ausgelesen bzw. veraendert werden.
+
+
+BEISPIEL
+========
+
+   Ein eigener haeufig benutzter Laden koennte ein Lager in folgender
+   Form erhalten:
+     // myStore
+     #include <bank.h>
+     inherit "std/store";
+     void create()
+     { ::create();
+       SetProp(P_STORE_CONSUME,90);
+       // keine weiteren Beschreibungen, Spieler sollen da drin
+       // schliesslich nicht rumwuseln
+     }
+   Um das Lager dem Laden zuzuweisen, nutzt man folgendes:
+     // myShop
+     inherit "std/laden";
+     void create()
+     { ::create();
+       SetStorageRoom("pfad/myStore");
+       // Beschreibungen folgen
+       ...
+     }
+   Es werden hierbei waehrend jedes Lager-Resets 90% der im Lager
+   befindlichen Objekte vernichtet.
+
+
+SIEHE AUCH
+==========
+
+   P_MIN_STOCK, SetStorageRoom(), /std/store.c, /std/shop.c
+   AddItem(), RemoveItem(), AddFixedObject(), RemoveFixedObject()
+
+Last modified: 19-Jun-2015, Arathorn
