summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
diff options
context:
space:
mode:
authorharanp <haranp@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-04 17:32:00 +0000
committerharanp <haranp@c06c8d41-db1a-0410-9941-cceddc491573>2009-02-04 17:32:00 +0000
commit55d5736219e39edcf1976aa6ac909a64e7104cf1 (patch)
tree17b21b814bf991b86e6d88a9d738c60f709fa8e4 /crawl-ref/source
parent1df63f2d24648d2467da71b81ba53f039e6539c0 (diff)
downloadcrawl-ref-55d5736219e39edcf1976aa6ac909a64e7104cf1.tar.gz
crawl-ref-55d5736219e39edcf1976aa6ac909a64e7104cf1.zip
Move a bit more things to use coord_defs and iterators instead of x,y.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8892 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source')
-rw-r--r--crawl-ref/source/tilepick.cc8
-rw-r--r--crawl-ref/source/view.cc84
-rw-r--r--crawl-ref/source/view.h4
3 files changed, 48 insertions, 48 deletions
diff --git a/crawl-ref/source/tilepick.cc b/crawl-ref/source/tilepick.cc
index 8677a17473..a034c7f3e2 100644
--- a/crawl-ref/source/tilepick.cc
+++ b/crawl-ref/source/tilepick.cc
@@ -82,10 +82,10 @@ int tile_unseen_flag(const coord_def& gc)
{
if (!map_bounds(gc))
return TILE_FLAG_UNSEEN;
- else if (is_terrain_known(gc.x,gc.y)
- && !is_terrain_seen(gc.x,gc.y)
- || is_envmap_detected_item(gc.x,gc.y)
- || is_envmap_detected_mons(gc.x,gc.y))
+ else if (is_terrain_known(gc)
+ && !is_terrain_seen(gc)
+ || is_envmap_detected_item(gc)
+ || is_envmap_detected_mons(gc))
{
return TILE_FLAG_MM_UNSEEN;
}
diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc
index 3f99e2fbfb..cc58ba7711 100644
--- a/crawl-ref/source/view.cc
+++ b/crawl-ref/source/view.cc
@@ -767,63 +767,59 @@ screen_buffer_t colour_code_map( const coord_def& p, bool item_colour,
int count_detected_mons()
{
int count = 0;
- for (int y = Y_BOUND_1; y <= Y_BOUND_2; ++y)
- for (int x = X_BOUND_1; x <= X_BOUND_2; ++x)
- {
- // Don't expose new dug out areas:
- // Note: assumptions are being made here about how
- // terrain can change (eg it used to be solid, and
- // thus monster/item free).
- if (is_terrain_changed(x, y))
- continue;
-
- if (is_envmap_detected_mons(x, y))
- count++;
- }
+ for (rectangle_iterator ri(BOUNDARY_BORDER - 1); ri; ++ri)
+ {
+ // Don't expose new dug out areas:
+ // Note: assumptions are being made here about how
+ // terrain can change (eg it used to be solid, and
+ // thus monster/item free).
+ if (is_terrain_changed(*ri))
+ continue;
+
+ if (is_envmap_detected_mons(*ri))
+ count++;
+ }
return (count);
}
void clear_map(bool clear_detected_items, bool clear_detected_monsters)
{
- for (int y = Y_BOUND_1; y <= Y_BOUND_2; ++y)
- for (int x = X_BOUND_1; x <= X_BOUND_2; ++x)
- {
- // FIXME convert to using p everywhere.
- const coord_def p(x,y);
- // Don't expose new dug out areas:
- // Note: assumptions are being made here about how
- // terrain can change (eg it used to be solid, and
- // thus monster/item free).
-
- // This reasoning doesn't make sense when it comes to *clearing*
- // the map! (jpeg)
-
- unsigned envc = get_envmap_char(x, y);
- if (!envc)
- continue;
+ for (rectangle_iterator ri(BOUNDARY_BORDER - 1); ri; ++ri)
+ {
+ const coord_def p = *ri;
+ // Don't expose new dug out areas:
+ // Note: assumptions are being made here about how
+ // terrain can change (eg it used to be solid, and
+ // thus monster/item free).
- if (is_envmap_item(x, y))
- continue;
+ // This reasoning doesn't make sense when it comes to *clearing*
+ // the map! (jpeg)
- if (!clear_detected_items && is_envmap_detected_item(x, y))
- continue;
+ if (get_envmap_char(p) == 0)
+ continue;
- if (!clear_detected_monsters && is_envmap_detected_mons(x, y))
- continue;
+ if (is_envmap_item(p))
+ continue;
- set_envmap_obj(p, is_terrain_known(p)? grd(p) : 0);
- set_envmap_detected_mons(x, y, false);
- set_envmap_detected_item(x, y, false);
+ if (!clear_detected_items && is_envmap_detected_item(p))
+ continue;
+
+ if (!clear_detected_monsters && is_envmap_detected_mons(p))
+ continue;
+
+ set_envmap_obj(p, is_terrain_known(p)? grd(p) : 0);
+ set_envmap_detected_mons(p, false);
+ set_envmap_detected_item(p, false);
#ifdef USE_TILE
- set_envmap_obj(p, is_terrain_known(p)? grd(p) : 0);
- env.tile_bk_fg[x][y] = 0;
- env.tile_bk_bg[x][y] = is_terrain_known(p) ?
- tile_idx_unseen_terrain(x, y, grd[x][y]) :
- tileidx_feature(DNGN_UNSEEN, x, y);
+ set_envmap_obj(p, is_terrain_known(p)? grd(p) : 0);
+ env.tile_bk_fg(p) = 0;
+ env.tile_bk_bg(p) = is_terrain_known(p) ?
+ tile_idx_unseen_terrain(p.x, p.y, grd(p)) :
+ tileidx_feature(DNGN_UNSEEN, p.x, p.y);
#endif
- }
+ }
}
int get_mons_colour(const monsters *mons)
diff --git a/crawl-ref/source/view.h b/crawl-ref/source/view.h
index c544f6024b..6335c15a8c 100644
--- a/crawl-ref/source/view.h
+++ b/crawl-ref/source/view.h
@@ -135,6 +135,10 @@ bool is_sanctuary( const coord_def& p );
bool is_bloodcovered( const coord_def& p );
bool is_envmap_detected_item(int x, int y);
+inline bool is_envmap_detected_item(const coord_def& c) {
+ return is_envmap_detected_item(c.x, c.y);
+}
+
bool is_envmap_detected_mons(int x, int y);
inline bool is_envmap_detected_mons(const coord_def& c) {
return is_envmap_detected_mons(c.x, c.y);