- 0, /* 0 = Nothing */
- 1, /* 1 = Simple (33x11) */
- 1, /* 2 = Overlapping (33x11) */
- 3, /* 3 = Crossed (33x11) */
- 3, /* 4 = Large (33x11) */
- 10, /* 5 = Monster nest (33x11) */
- 10, /* 6 = Monster pit (33x11) */
- 10, /* 7 = Lesser vault (33x22) */
- 20, /* 8 = Greater vault (66x44) */
- 5, /* 9 = Fractal cave (42x24) */
- 10, /* 10 = Random vault (44x22) */
- 3, /* 11 = Circular rooms (22x22) */
- 10, /* 12 = Crypts (22x22) */
- 20, /* 13 = Trapped monster pit */
- 20, /* 14 = Piranha/Armageddon trap room */
+ /* Depth */
+ /* 0 10 20 30 40 50 60 70 80 90 100 min limit */
+
+ {{999,900,800,700,600,500,400,300,200,100, 0}, 0}, /*NORMAL */
+ {{ 1, 10, 20, 30, 40, 50, 60, 70, 80, 90,100}, 1}, /*OVERLAP */
+ {{ 1, 10, 20, 30, 40, 50, 60, 70, 80, 90,100}, 3}, /*CROSS */
+ {{ 1, 10, 20, 30, 40, 50, 60, 70, 80, 90,100}, 3}, /*INNER_F */
+ {{ 0, 1, 1, 1, 2, 3, 5, 6, 8, 10, 13}, 10}, /*NEST */
+ {{ 0, 1, 1, 2, 3, 4, 6, 8, 10, 13, 16}, 10}, /*PIT */
+ {{ 0, 1, 1, 1, 2, 2, 3, 5, 6, 8, 10}, 10}, /*LESSER_V */
+ {{ 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 4}, 20}, /*GREATER_V*/
+ {{ 0,100,200,300,400,500,600,700,800,900,999}, 10}, /*FRACAVE */
+ {{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2}, 10}, /*RANDOM_V */
+ {{ 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40}, 3}, /*OVAL */
+ {{ 1, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60}, 10}, /*CRYPT */
+ {{ 0, 0, 1, 1, 1, 2, 3, 4, 5, 6, 8}, 20}, /*TRAP_PIT */
+ {{ 0, 0, 1, 1, 1, 2, 3, 4, 5, 6, 8}, 20}, /*TRAP */
+};
+
+
+/* Build rooms in descending order of difficulty. */
+static byte room_build_order[ROOM_T_MAX] = {
+ ROOM_T_GREATER_VAULT,
+ ROOM_T_RANDOM_VAULT,
+ ROOM_T_LESSER_VAULT,
+ ROOM_T_TRAP_PIT,
+ ROOM_T_PIT,
+ ROOM_T_NEST,
+ ROOM_T_TRAP,
+ ROOM_T_INNER_FEAT,
+ ROOM_T_OVAL,
+ ROOM_T_CRYPT,
+ ROOM_T_OVERLAP,
+ ROOM_T_CROSS,
+ ROOM_T_FRACAVE,
+ ROOM_T_NORMAL,