#define PM_NO_KAGE 0x00000010
#define PM_NO_PET 0x00000020
#define PM_ALLOW_UNIQUE 0x00000040
+#define PM_IGNORE_TERRAIN 0x00000080
/*
extern s16b gf_color[MAX_GF];
extern int init_flags;
extern int highscore_fd;
-extern bool monster_terrain_sensitive;
extern int mutant_regenerate_mod;
extern bool easy_band;
extern bool vanilla_town;
&& (cave[y][x].feat <= FEAT_PATTERN_XTRA2))
return (FALSE);
- if (monster_terrain_sensitive &&
+ if (!(mode & PM_IGNORE_TERRAIN) &&
!monster_can_cross_terrain(cave[y][x].feat, r_ptr))
{
return FALSE;
}
else
{
- monster_terrain_sensitive = FALSE;
-
/* Placing the new monster failed */
- place_monster_aux(0, y, x, old_r_idx, (mode | PM_NO_KAGE));
+ place_monster_aux(0, y, x, old_r_idx, (mode | PM_NO_KAGE | PM_IGNORE_TERRAIN));
m_list[hack_m_idx_ii] = back_m;
-
- monster_terrain_sensitive = TRUE;
}
if (targeted) target_who = hack_m_idx_ii;
*/
int highscore_fd = -1;
-/*
- * Should the monster allocation fail with inappropriate terrain?
- */
-bool monster_terrain_sensitive = TRUE;
-
int mutant_regenerate_mod = 100;
/*