diff options
Diffstat (limited to 'crawl-ref/source/view.cc')
-rw-r--r-- | crawl-ref/source/view.cc | 40 |
1 files changed, 28 insertions, 12 deletions
diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc index 20345fb91a..6deca847e6 100644 --- a/crawl-ref/source/view.cc +++ b/crawl-ref/source/view.cc @@ -3872,30 +3872,36 @@ bool magic_mapping(int map_radius, int proportion, bool suppress_msg, return (false); } - if (map_radius > 50 && map_radius != 1000) - map_radius = 50; - else if (map_radius < 5) - map_radius = 5; + const bool wizard_map = (you.wizard && map_radius == 1000); + + if (!wizard_map) + { + if (map_radius > 50) + map_radius = 50; + else if (map_radius < 5) + map_radius = 5; + } // now gradually weaker with distance: - const int pfar = (map_radius * 7) / 10; + const int pfar = (map_radius * 7) / 10; const int very_far = (map_radius * 9) / 10; - const bool wizard_map = (you.wizard && map_radius == 1000); - bool did_map = false; for (radius_iterator ri(you.pos(), map_radius, true, false); ri; ++ri) { if (proportion < 100 && random2(100) >= proportion) continue; // note that proportion can be over 100 - const int dist = grid_distance( you.pos(), *ri ); + if (!wizard_map) + { + const int dist = grid_distance( you.pos(), *ri ); - if (dist > pfar && one_chance_in(3)) - continue; + if (dist > pfar && one_chance_in(3)) + continue; - if (dist > very_far && coinflip()) - continue; + if (dist > very_far && coinflip()) + continue; + } if (is_terrain_changed(*ri)) clear_envmap_grid(*ri); @@ -4066,6 +4072,7 @@ bool grid_see_grid(const coord_def& p1, const coord_def& p2, true, true)); } +// For order and meaning of symbols, see dungeon_char_type in enum.h. static const unsigned dchar_table[ NUM_CSET ][ NUM_DCHAR_TYPES ] = { // CSET_ASCII @@ -4215,6 +4222,15 @@ void init_feature_table( void ) Feature[i].minimap = MF_WALL; break; + case DNGN_OPEN_SEA: +#ifdef USE_TILE + Feature[i].dchar = DCHAR_WAVY; +#else + Feature[i].dchar = DCHAR_WALL; +#endif + Feature[i].colour = BLUE; + Feature[i].minimap = MF_WATER; + break; case DNGN_OPEN_DOOR: Feature[i].dchar = DCHAR_DOOR_OPEN; |