OSDN Git Service

青魔法分類の [その他] のマスクを整理. RF4_XXX_MASKを削除.
[hengband/hengband.git] / src / defines.h
index 2afb3a4..e3e3b5a 100644 (file)
@@ -49,7 +49,7 @@
 #define H_VER_MAJOR 1
 #define H_VER_MINOR 5
 #define H_VER_PATCH 0
-#define H_VER_EXTRA 0
+#define H_VER_EXTRA 1
 
 /* Added for ZAngband */
 #define FAKE_VERSION   0
 #define MIN_RANDOM_QUEST    40
 #define MAX_RANDOM_QUEST    49
 
+/* Check is the quest index is "fixed" */
+#define is_fixed_quest_idx(Q_IDX) (((Q_IDX) < MIN_RANDOM_QUEST) || ((Q_IDX) > MAX_RANDOM_QUEST))
+
 #define QUEST_OBERON         8
 #define QUEST_SERPENT        9
 
  * Arena constants
  */
 #define MAX_ARENA_MONS         38      /* -KMW- */
+#define ARENA_DEFEATED_OLD_VER (-(MAX_SHORT))
 
 
 /*
 
 
 /*
- * Extract energy from speed
+ * Extract energy from speed (Assumes that SPEED is unsigned)
  */
 #define SPEED_TO_ENERGY(SPEED) \
-       (((SPEED) > 199) ? 49 : (((int)(SPEED) < 0) ? 1 : extract_energy[(SPEED)]))
+       (((SPEED) > 199) ? 49 : extract_energy[(SPEED)])
 
 
 /*
 #define PF_RYOUTE       0x0040
 
 
+/* Maximum number of preservable pets */
+#define MAX_PARTY_MON 21
+
+
 /*
  * There is a 1/20 (5%) chance of inflating the requested object_level
  * during the creation of an object (see "get_obj_num()" in "object.c").
  */
 #define MAX_SIGHT       20      /* Maximum view distance */
 #define MAX_RANGE       (p_ptr->inside_battle ? 36 : 18)      /* Maximum range (spells, etc) */
+#define AAF_LIMIT       100     /* Limit of sensing radius */
 
 
 
 #define CAVE_IN_DETECT  0x4000    /* trap detected area (inner circle only) */
 
 
+/* Room types for generate_lake() */
+#define GEN_LAKE_TYPE_LAVA        1
+#define GEN_LAKE_TYPE_WATER       2
+#define GEN_LAKE_TYPE_CAVE        3
+#define GEN_LAKE_TYPE_EARTH_VAULT 4
+#define GEN_LAKE_TYPE_AIR_VAULT   5
+#define GEN_LAKE_TYPE_WATER_VAULT 6
+#define GEN_LAKE_TYPE_FIRE_VAULT  7
+
+
+/* Room types for room_build() */
+#define ROOM_BUILD_TYPE_NORMAL         1
+#define ROOM_BUILD_TYPE_OVERLAP        2
+#define ROOM_BUILD_TYPE_CROSS          3
+#define ROOM_BUILD_TYPE_INNER_FEAT     4
+#define ROOM_BUILD_TYPE_NEST           5
+#define ROOM_BUILD_TYPE_PIT            6
+#define ROOM_BUILD_TYPE_LESSER_VAULT   7
+#define ROOM_BUILD_TYPE_GREATER_VAULT  8
+#define ROOM_BUILD_TYPE_FRACAVE        9
+#define ROOM_BUILD_TYPE_RANDOM_VAULT  10
+#define ROOM_BUILD_TYPE_OVAL          11
+#define ROOM_BUILD_TYPE_CRYPT         12
+#define ROOM_BUILD_TYPE_TRAP_PIT      13
+#define ROOM_BUILD_TYPE_TRAP          14
+
+
 /*
  * Bit flags for the "project()" function
  *
 #define RF1_MALE                0x00000004  /* Male gender */
 #define RF1_FEMALE              0x00000008  /* Female gender */
 #define RF1_CHAR_CLEAR          0x00000010  /* Absorbs symbol */
-#define RF1_CHAR_MULTI          0x00000020  /* Changes symbol */
+#define RF1_SHAPECHANGER        0x00000020  /* TY: shapechanger */
 #define RF1_ATTR_CLEAR          0x00000040  /* Absorbs color */
 #define RF1_ATTR_MULTI          0x00000080  /* Changes color */
 #define RF1_FORCE_DEPTH         0x00000100  /* Start at "correct" depth */
 #define RF1_FORCE_MAXHP         0x00000200  /* Start with max hitpoints */
 #define RF1_FORCE_SLEEP         0x00000400  /* Start out sleeping */
 #define RF1_FORCE_EXTRA         0x00000800  /* Start out something */
-#define RF1_XXX1                0x00001000  /* XXX */
+#define RF1_ATTR_SEMIRAND       0x00001000  /* Color is determined semi-randomly */
 #define RF1_FRIENDS             0x00002000  /* Arrive with some friends */
 #define RF1_ESCORT              0x00004000  /* Arrive with an escort */
 #define RF1_ESCORTS             0x00008000  /* Arrive with some escorts */
 #define RF2_WEIRD_MIND      0x00000080  /* Monster avoids telepathy? */
 #define RF2_MULTIPLY        0x00000100  /* Monster reproduces */
 #define RF2_REGENERATE      0x00000200  /* Monster regenerates */
-#define RF2_SHAPECHANGER    0x00000400  /* TY: shapechanger */
+#define RF2_CHAR_MULTI      0x00000400  /* (Not implemented) */
 #define RF2_ATTR_ANY        0x00000800  /* TY: Attr_any */
 #define RF2_POWERFUL        0x00001000  /* Monster has strong breath */
 #define RF2_ELDRITCH_HORROR 0x00002000  /* Sanity-blasting horror    */
 #define RF2_KILL_BODY       0x00200000  /* Monster can kill monsters */
 #define RF2_TAKE_ITEM       0x00400000  /* Monster can pick up items */
 #define RF2_KILL_ITEM       0x00800000  /* Monster can crush items */
-#define RF2_BRAIN_1         0x01000000
-#define RF2_BRAIN_2         0x02000000
-#define RF2_BRAIN_3         0x04000000
-#define RF2_BRAIN_4         0x08000000
-#define RF2_BRAIN_5         0x10000000
-#define RF2_BRAIN_6         0x20000000
-#define RF2_HUMAN           0x40000000
+#define RF2_XXX1            0x01000000
+#define RF2_XXX2            0x02000000
+#define RF2_XXX3            0x04000000
+#define RF2_XXX4            0x08000000
+#define RF2_XXX5            0x10000000
+#define RF2_XXX6            0x20000000
+#define RF2_HUMAN           0x40000000  /* Human */
 #define RF2_QUANTUM         0x80000000  /* Monster has quantum behavior */
 
 /*
 #define RF9_EAT_LOSE_CHR        0x40000000
 #define RF9_EAT_DRAIN_MANA      0x80000000
 
+
 /*
  * Hack -- choose "intelligent" spells when desperate
+ * Including "summon" spells
  */
-
 #define RF4_INT_MASK \
-   (RF4_DISPEL)
+       (RF4_SUMMON_MASK | RF4_DISPEL)
 
 #define RF5_INT_MASK \
-  (RF5_HOLD | RF5_SLOW | RF5_CONF | RF5_BLIND | RF5_SCARE)
+       (RF5_SUMMON_MASK | \
+        RF5_HOLD | RF5_SLOW | RF5_CONF | RF5_BLIND | RF5_SCARE)
 
 #define RF6_INT_MASK \
-   (RF6_BLINK |  RF6_TPORT | RF6_TELE_LEVEL | RF6_TELE_AWAY | \
-    RF6_HEAL | RF6_INVULNER | RF6_HASTE | RF6_TRAPS | \
-    RF6_S_KIN | RF6_S_CYBER | RF6_S_MONSTER | RF6_S_MONSTERS | \
-    RF6_S_ANT | RF6_S_SPIDER | RF6_S_HOUND | RF6_S_HYDRA | \
-    RF6_S_ANGEL | RF6_S_DRAGON | RF6_S_UNDEAD | RF6_S_DEMON | \
-    RF6_S_HI_DRAGON | RF6_S_HI_UNDEAD | RF6_S_AMBERITES | RF6_S_UNIQUE)
-
+       (RF6_SUMMON_MASK | \
+        RF6_BLINK | RF6_TPORT | RF6_TELE_LEVEL | RF6_TELE_AWAY | \
+        RF6_HEAL | RF6_INVULNER | RF6_HASTE | RF6_TRAPS)
 
+/*
+ * Hack -- spells that cannot be used while player riding on the monster
+ */
 #define RF4_RIDING_MASK \
-  (RF4_SHRIEK)
+       (RF4_SHRIEK)
 
-#define RF5_RIDING_MASK \
-   0L
+#define RF5_RIDING_MASK 0L
 
 #define RF6_RIDING_MASK \
-   (RF6_BLINK | RF6_TPORT | RF6_TRAPS | RF6_DARKNESS | RF6_SPECIAL)
-
+       (RF6_BLINK | RF6_TPORT | RF6_TRAPS | RF6_DARKNESS | RF6_SPECIAL)
 
 /*
  * Hack -- "bolt" spells that may hurt fellow monsters
+ * Currently "bolt" spells are included in "attack"
  */
 #define RF4_BOLT_MASK \
-  (RF4_ROCKET | RF4_SHOOT)
+       (RF4_ROCKET | RF4_SHOOT)
 
 #define RF5_BOLT_MASK \
-   (RF5_BO_ACID | RF5_BO_ELEC | RF5_BO_FIRE | RF5_BO_COLD | \
-    RF5_BO_NETH | RF5_BO_WATE | RF5_BO_MANA | \
-    RF5_BO_PLAS | RF5_BO_ICEE | RF5_MISSILE)
+       (RF5_BO_ACID | RF5_BO_ELEC | RF5_BO_FIRE | RF5_BO_COLD | \
+        RF5_BO_NETH | RF5_BO_WATE | RF5_BO_MANA | RF5_BO_PLAS | \
+        RF5_BO_ICEE | RF5_MISSILE)
 
-#define RF6_BOLT_MASK 0
+#define RF6_BOLT_MASK 0L
 
 /*
  * Hack -- "beam" spells that may hurt fellow monsters
+ * Currently "beam" spells are included in "attack"
  */
-#define RF4_BEAM_MASK 0
+#define RF4_BEAM_MASK 0L
 
-#define RF5_BEAM_MASK 0
+#define RF5_BEAM_MASK 0L
 
 #define RF6_BEAM_MASK (RF6_PSY_SPEAR)
 
 /*
- * Hack -- 'ball' spells that may hurt friends
+ * Hack -- "ball" spells that may hurt friends
+ * Including "radius 4 ball" and "breath" spells
+ * Currently "ball" spells are included in "attack"
  */
 #define RF4_BALL_MASK \
-       (RF4_ROCKET | RF4_BR_ACID | RF4_BR_ELEC | RF4_BR_FIRE | \
-       RF4_BR_COLD | RF4_BR_POIS | RF4_BR_NETH | RF4_BR_LITE | \
-       RF4_BR_DARK | RF4_BR_CONF | RF4_BR_SOUN | RF4_BR_CHAO | \
-       RF4_BR_DISE | RF4_BR_NEXU | RF4_BR_SHAR | \
-       RF4_BR_SOUN | RF4_BR_TIME | RF4_BR_INER | RF4_BR_GRAV | \
-       RF4_BR_PLAS | RF4_BR_WALL | RF4_BR_MANA | RF4_BA_NUKE | \
-       RF4_BR_NUKE | RF4_BA_CHAO | RF4_BR_DISI)
+       (RF4_BIG_BALL_MASK | RF4_BREATH_MASK | \
+        RF4_ROCKET | RF4_BA_NUKE)
 
 #define RF5_BALL_MASK \
-       (RF5_BA_ACID | RF5_BA_ELEC | RF5_BA_FIRE | RF5_BA_COLD | \
-        RF5_BA_POIS | RF5_BA_LITE | \
-       RF5_BA_NETH | RF5_BA_DARK | RF5_BA_WATE | RF5_BA_MANA)
+       (RF5_BIG_BALL_MASK | RF5_BREATH_MASK | \
+        RF5_BA_ACID | RF5_BA_ELEC | RF5_BA_FIRE | RF5_BA_COLD | \
+        RF5_BA_POIS | RF5_BA_NETH)
 
 #define RF6_BALL_MASK \
-       0L
-
+       (RF6_BIG_BALL_MASK | RF6_BREATH_MASK)
 
 /*
- * Hack -- 'ball' spells with radius 4 that may hurt friends
+ * Hack -- "ball" spells with radius 4 that may hurt friends
+ * Currently "radius 4 ball" spells are included in "ball"
  */
 #define RF4_BIG_BALL_MASK \
        (RF4_BA_CHAO)
 #define RF5_BIG_BALL_MASK \
        (RF5_BA_LITE | RF5_BA_DARK | RF5_BA_WATE | RF5_BA_MANA)
 
-#define RF6_BIG_BALL_MASK \
-       0L
-
+#define RF6_BIG_BALL_MASK 0L
 
 /*
- * Hack -- 'breath' spells that may hurt friends
+ * Hack -- "breath" spells that may hurt friends
+ * Currently "breath" spells are included in "ball" and "non-magic"
  */
 #define RF4_BREATH_MASK \
-       (RF4_BR_ACID | RF4_BR_ELEC | RF4_BR_FIRE | \
-       RF4_BR_COLD | RF4_BR_POIS | RF4_BR_NETH | RF4_BR_LITE | \
-       RF4_BR_DARK | RF4_BR_CONF | RF4_BR_SOUN | RF4_BR_CHAO | \
-       RF4_BR_DISE | RF4_BR_NEXU | RF4_BR_SHAR | \
-       RF4_BR_SOUN | RF4_BR_TIME | RF4_BR_INER | RF4_BR_GRAV | \
-       RF4_BR_PLAS | RF4_BR_WALL | RF4_BR_MANA | \
-       RF4_BR_NUKE | RF4_BR_DISI)
-
-#define RF5_BREATH_MASK \
-    0L
+       (RF4_BR_ACID | RF4_BR_ELEC | RF4_BR_FIRE | RF4_BR_COLD | \
+        RF4_BR_POIS | RF4_BR_NETH | RF4_BR_LITE | RF4_BR_DARK | \
+        RF4_BR_CONF | RF4_BR_SOUN | RF4_BR_CHAO | RF4_BR_DISE | \
+        RF4_BR_NEXU | RF4_BR_SHAR | RF4_BR_TIME | RF4_BR_INER | \
+        RF4_BR_GRAV | RF4_BR_PLAS | RF4_BR_WALL | RF4_BR_MANA | \
+        RF4_BR_NUKE | RF4_BR_DISI)
 
-#define RF6_BREATH_MASK \
-    0L
+#define RF5_BREATH_MASK 0L
 
-/* Hack -- summon spells */
+#define RF6_BREATH_MASK 0L
 
-#define RF4_SUMMON_MASK \
-    0L
+/*
+ * Hack -- "summon" spells
+ * Currently "summon" spells are included in "intelligent" and "indirect"
+ */
+#define RF4_SUMMON_MASK 0L
 
-#define RF5_SUMMON_MASK \
-    0L
+#define RF5_SUMMON_MASK 0L
 
 #define RF6_SUMMON_MASK \
-    (RF6_S_KIN | RF6_S_CYBER | RF6_S_MONSTER | RF6_S_MONSTERS | RF6_S_ANT | \
-     RF6_S_SPIDER | RF6_S_HOUND | RF6_S_HYDRA | RF6_S_ANGEL | RF6_S_DEMON | \
-     RF6_S_UNDEAD | RF6_S_DRAGON | RF6_S_HI_UNDEAD | RF6_S_HI_DRAGON | \
-     RF6_S_AMBERITES | RF6_S_UNIQUE)
-
+       (RF6_S_KIN | RF6_S_CYBER | RF6_S_MONSTER | RF6_S_MONSTERS | RF6_S_ANT | \
+        RF6_S_SPIDER | RF6_S_HOUND | RF6_S_HYDRA | RF6_S_ANGEL | RF6_S_DEMON | \
+        RF6_S_UNDEAD | RF6_S_DRAGON | RF6_S_HI_UNDEAD | RF6_S_HI_DRAGON | \
+        RF6_S_AMBERITES | RF6_S_UNIQUE)
 
 /*
  * Hack -- "attack" spells
+ * Including "bolt", "beam" and "ball" spells
  */
 #define RF4_ATTACK_MASK \
-  (RF4_SHRIEK | RF4_DISPEL | RF4_ROCKET | RF4_SHOOT | \
-   RF4_BR_ACID | RF4_BR_ELEC | RF4_BR_FIRE | \
-   RF4_BR_COLD | RF4_BR_POIS | RF4_BR_NETH | RF4_BR_LITE | RF4_BR_DARK | \
-   RF4_BR_CONF | RF4_BR_SOUN | RF4_BR_CHAO | RF4_BR_DISE | RF4_BR_NEXU | \
-   RF4_BR_TIME | RF4_BR_INER | RF4_BR_GRAV | RF4_BR_SHAR | RF4_BR_PLAS | \
-   RF4_BR_WALL | RF4_BR_MANA | RF4_BA_NUKE | RF4_BR_NUKE | RF4_BA_CHAO | \
-   RF4_BR_DISI)
+       (RF4_BOLT_MASK | RF4_BEAM_MASK | RF4_BALL_MASK | RF4_DISPEL)
 
 #define RF5_ATTACK_MASK \
-   (RF5_BA_ACID | RF5_BA_ELEC | RF5_BA_FIRE | RF5_BA_COLD | \
-    RF5_BA_POIS | RF5_BA_NETH | RF5_BA_WATE | RF5_BA_MANA | \
-    RF5_BA_DARK | RF5_DRAIN_MANA | RF5_MIND_BLAST | RF5_BRAIN_SMASH | \
-    RF5_CAUSE_1 | RF5_CAUSE_2 | RF5_CAUSE_3 | RF5_CAUSE_4 | \
-    RF5_BO_ACID | RF5_BO_ELEC | RF5_BO_FIRE | RF5_BO_COLD | \
-    RF5_BA_LITE | RF5_BO_NETH | RF5_BO_WATE | RF5_BO_MANA | \
-    RF5_BO_PLAS | RF5_BO_ICEE | RF5_MISSILE | RF5_SCARE | \
-    RF5_BLIND | RF5_CONF | RF5_SLOW | RF5_HOLD)
+       (RF5_BOLT_MASK | RF5_BEAM_MASK | RF5_BALL_MASK | \
+        RF5_DRAIN_MANA | RF5_MIND_BLAST | RF5_BRAIN_SMASH | \
+        RF5_CAUSE_1 | RF5_CAUSE_2 | RF5_CAUSE_3 | RF5_CAUSE_4 | \
+        RF5_SCARE | RF5_BLIND | RF5_CONF | RF5_SLOW | RF5_HOLD)
 
 #define RF6_ATTACK_MASK \
-  (RF6_HAND_DOOM | RF6_TELE_TO | RF6_TELE_AWAY | RF6_PSY_SPEAR | \
-   RF6_DARKNESS | RF6_TRAPS | RF6_FORGET)
-
+       (RF6_BOLT_MASK | RF6_BEAM_MASK | RF6_BALL_MASK | \
+        RF6_HAND_DOOM | RF6_TELE_TO | RF6_TELE_AWAY | RF6_TELE_LEVEL | \
+        RF6_DARKNESS | RF6_TRAPS | RF6_FORGET)
 
 /*
  * Hack -- "indirect" spells
+ * Including "summon" spells
  */
 #define RF4_INDIRECT_MASK \
-  (RF4_SHRIEK | RF4_XXX1 | RF4_XXX2 | RF4_XXX3 | RF4_XXX4)
+       (RF4_SUMMON_MASK | RF4_SHRIEK)
 
 #define RF5_INDIRECT_MASK \
-  0L
+       (RF5_SUMMON_MASK)
 
 #define RF6_INDIRECT_MASK \
-  (RF6_HASTE | RF6_HEAL | RF6_INVULNER | RF6_BLINK | RF6_WORLD | \
-   RF6_TPORT | RF6_RAISE_DEAD | \
-   RF6_S_KIN | RF6_S_CYBER | RF6_S_MONSTER | RF6_S_MONSTERS | \
-   RF6_S_ANT | RF6_S_SPIDER | RF6_S_HOUND | RF6_S_HYDRA | \
-   RF6_S_ANGEL | RF6_S_DEMON | RF6_S_UNDEAD | RF6_S_DRAGON | \
-   RF6_S_HI_UNDEAD | RF6_S_HI_DRAGON | RF6_S_AMBERITES | RF6_S_UNIQUE)
-
+       (RF6_SUMMON_MASK | \
+        RF6_HASTE | RF6_HEAL | RF6_INVULNER | RF6_BLINK | RF6_WORLD | \
+        RF6_TPORT | RF6_RAISE_DEAD)
 
 /*
- * Hack -- "no magic" spells
+ * Hack -- "non-magic" spells
+ * Including "breath" spells
  */
 #define RF4_NOMAGIC_MASK \
-       (RF4_SHRIEK | RF4_ROCKET | RF4_SHOOT | \
-        RF4_BR_ACID | RF4_BR_ELEC | \
-        RF4_BR_FIRE | RF4_BR_COLD | RF4_BR_POIS | RF4_BR_NETH | \
-        RF4_BR_LITE | RF4_BR_DARK | RF4_BR_CONF | RF4_BR_SOUN | \
-        RF4_BR_CHAO | RF4_BR_DISE | RF4_BR_NEXU | RF4_BR_SHAR | \
-       RF4_BR_SOUN | RF4_BR_TIME | RF4_BR_INER | RF4_BR_GRAV | \
-       RF4_BR_PLAS | RF4_BR_WALL | RF4_BR_MANA | \
-       RF4_BR_NUKE | RF4_BR_DISI)
+       (RF4_BREATH_MASK | RF4_SHRIEK | RF4_ROCKET | RF4_SHOOT)
 
 #define RF5_NOMAGIC_MASK \
-     0L
+       (RF5_BREATH_MASK)
 
 #define RF6_NOMAGIC_MASK \
-     (RF6_SPECIAL)
+       (RF6_BREATH_MASK | RF6_SPECIAL)
 
 
 #define MR1_SINKA 0x01
@@ -4490,6 +4501,11 @@ extern int PlayerUID;
 
 #define MAX_MANE 16
 #define MAX_MONSPELLS 96
+#define MONSPELL_TYPE_BOLT 1
+#define MONSPELL_TYPE_BALL 2
+#define MONSPELL_TYPE_BREATH 3
+#define MONSPELL_TYPE_SUMMON 4
+#define MONSPELL_TYPE_OTHER 5
 
 #define EATER_EXT 36
 #define EATER_CHARGE 0x10000L
@@ -4615,16 +4631,20 @@ extern int PlayerUID;
 #define MON_GREEN_G       100
 #define MON_NOV_PRIEST_G  109
 #define MON_SILVER_COINS  117
+#define MON_D_ELF         122
 #define MON_MANES         128
 #define MON_LOST_SOUL     133
 #define MON_ROBIN_HOOD    138
 #define MON_NOV_PALADIN_G 147
 #define MON_PHANTOM_W     152
 #define MON_WOUNDED_BEAR  159
+#define MON_D_ELF_MAGE    178
+#define MON_D_ELF_WARRIOR 182
 #define MON_BLUE_HORROR   189
 #define MON_GOLD_COINS    195
 #define MON_VORPAL_BUNNY  205
 #define MON_PRIEST        225
+#define MON_D_ELF_PRIEST  226
 #define MON_TIGER         230
 #define MON_MITHRIL_COINS 239
 #define MON_DRUID         241
@@ -4645,11 +4665,13 @@ extern int PlayerUID;
 #define MON_ENERGY_VOR    359
 #define MON_IRON_GOLEM    367
 #define MON_JADE_MONK     370
+#define MON_D_ELF_WARLOCK 375
 #define MON_HAGEN         383
 #define MON_MENELDOR      384
 #define MON_PHANTOM_B     385
 #define MON_C_CRAWLER     395
 #define MON_XICLOTLAN     396
+#define MON_D_ELF_DRUID   400
 #define MON_TROLL_PRIEST  403
 #define MON_GWAIHIR       410
 #define MON_ANGEL         417
@@ -4679,6 +4701,7 @@ extern int PlayerUID;
 #define MON_REVENANT      555
 #define MON_RAAL          557
 #define MON_COLOSSUS      558
+#define MON_NIGHTBLADE    564
 #define MON_ELDER_THING   569
 #define MON_CRYPT_THING   577
 #define MON_NEXUS_VOR     587
@@ -4960,14 +4983,14 @@ extern int PlayerUID;
 #define DF1_NO_DOORS            0x00000020L
 #define DF1_WATER_RIVER         0x00000040L
 #define DF1_LAVA_RIVER          0x00000080L
-#define DF1_WATER_RIVERS        0x00000100L
-#define DF1_LAVA_RIVERS         0x00000200L
+#define DF1_XXX08               0x00000100L
+#define DF1_XXX09               0x00000200L
 #define DF1_CAVE                0x00000400L
 #define DF1_CAVERN              0x00000800L
-#define DF1_NO_UP               0x00001000L
-#define DF1_HOT                 0x00002000L
-#define DF1_COLD                0x00004000L
-#define DF1_NO_DOWN             0x00008000L
+#define DF1_XXX12               0x00001000L
+#define DF1_XXX13               0x00002000L
+#define DF1_XXX14               0x00004000L
+#define DF1_XXX15               0x00008000L
 #define DF1_FORGET              0x00010000L
 #define DF1_LAKE_WATER          0x00020000L
 #define DF1_LAKE_LAVA           0x00040000L
@@ -4976,11 +4999,14 @@ extern int PlayerUID;
 #define DF1_NO_VAULT            0x00200000L
 #define DF1_ARENA               0x00400000L
 #define DF1_DESTROY             0x00800000L
+#define DF1_XXX24               0x01000000L
 #define DF1_NO_CAVE             0x02000000L
 #define DF1_NO_MAGIC            0x04000000L
 #define DF1_NO_MELEE            0x08000000L
 #define DF1_CHAMELEON           0x10000000L
 #define DF1_DARKNESS            0x20000000L
+#define DF1_XXX30               0x40000000L
+#define DF1_XXX31               0x80000000L
 
 #define DF1_LAKE_MASK (DF1_LAKE_WATER | DF1_LAKE_LAVA | DF1_LAKE_RUBBLE | DF1_LAKE_TREE)