summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/libgui.cc
diff options
context:
space:
mode:
authorennewalker <ennewalker@c06c8d41-db1a-0410-9941-cceddc491573>2008-03-25 03:49:39 +0000
committerennewalker <ennewalker@c06c8d41-db1a-0410-9941-cceddc491573>2008-03-25 03:49:39 +0000
commite33fec2f0105b00d76ab7e01ce5121d5f4cf5f6a (patch)
treefd69e6bf69d9db3a06183e2dc52dfbe74f615b30 /crawl-ref/source/libgui.cc
parent965a5bf3f8f5d40b210468b2e9f4857a05f8b181 (diff)
downloadcrawl-ref-e33fec2f0105b00d76ab7e01ce5121d5f4cf5f6a.tar.gz
crawl-ref-e33fec2f0105b00d76ab7e01ce5121d5f4cf5f6a.zip
Fixing [1912248] shadow targetted "forbidden".
This change also makes targetted walls use the yellow cursor instead. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3867 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/libgui.cc')
-rw-r--r--crawl-ref/source/libgui.cc25
1 files changed, 5 insertions, 20 deletions
diff --git a/crawl-ref/source/libgui.cc b/crawl-ref/source/libgui.cc
index 4de458b23a..5687884654 100644
--- a/crawl-ref/source/libgui.cc
+++ b/crawl-ref/source/libgui.cc
@@ -167,17 +167,6 @@ static int mouse_mode = MOUSE_MODE_NORMAL;
static bool region_lock[NUM_REGIONS];
static bool toggle_telescope;
-#define char_is_wall(ch) (ch == 127 || (ch >= 137 && ch <= 140) \
- || ch == 177 || ch == 176 || ch == '#')
-
-#define char_is_item(ch) ( (ch == 33)||(ch == 34)||(ch == 36)||(ch == 37) \
- ||(ch == 40) ||(ch == 41)||(ch == 43)||(ch == 47)||(ch == 48) \
- ||(ch == 58) ||(ch == 61)||(ch == 63)||(ch == 88)||(ch == 91) \
- ||(ch == 92) ||(ch == 93)||(ch == 125) || (ch == '~'))
-
-#define char_is_monster(ch) ( (ch>='@' && ch<='Z') || (ch>='a' && ch<='z') \
- || ch=='&' || (ch>='1' && ch<='5') || ch == ';')
-
/***********************************************************/
//micromap color array
#define MAP_XMAX GXM
@@ -1120,24 +1109,20 @@ void tile_place_cursor(int x, int y, bool display)
}
int new_flag = TILE_FLAG_CURSOR1;
- const coord_def ep(x+1, y+1);
- const coord_def gc = view2grid(ep);
+ const coord_def vp(x+1, y+1);
+ const coord_def gc = view2grid(vp);
+ const coord_def ep = grid2show(gc);
if (gc.x < 0 || gc.y < 0 || gc.x >= GXM || gc.y >= GYM)
{
// off the dungeon...
tile_cursor_x = -1;
return;
}
- else if (!map_bounds(gc))
+ else if (!crawl_view.in_grid_los(gc) || !env.show(ep))
{
new_flag = TILE_FLAG_CURSOR2;
}
- else
- {
- unsigned char ch = env.map[gc.x][gc.y].glyph() & 0xff;
- if (ch==0 || ch==' ' || char_is_wall(ch))
- new_flag = TILE_FLAG_CURSOR2;
- }
+
tile_cursor_x = x;
tile_cursor_y = y;
tile_cursor_flag = TileDrawCursor(x, y, new_flag);