summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-06-07 11:59:04 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-06-07 11:59:04 +0000
commit2acc952de14e49420641729cd97cf1f236ad0c59 (patch)
tree1ad5e2e7a5a4923a8b68d3860512579d0003dd47 /crawl-ref
parent4fa98a2fc0bdc9ce571af9f1e839efe6382e1fe6 (diff)
downloadcrawl-ref-2acc952de14e49420641729cd97cf1f236ad0c59.tar.gz
crawl-ref-2acc952de14e49420641729cd97cf1f236ad0c59.zip
* Apply r9909 to trunk.
* Treat granite statues/orcish ideas as transparent walls for clear_walls_block in losight(). Fixes BR 2802483. Please run some tests before porting to branch in case it breaks reaching or summoning or something like that. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9910 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/items.cc3
-rw-r--r--crawl-ref/source/monstuff.cc2
-rw-r--r--crawl-ref/source/view.cc3
3 files changed, 5 insertions, 3 deletions
diff --git a/crawl-ref/source/items.cc b/crawl-ref/source/items.cc
index e5c356ba86..fdc9592185 100644
--- a/crawl-ref/source/items.cc
+++ b/crawl-ref/source/items.cc
@@ -1959,7 +1959,8 @@ bool drop_item( int item_dropped, int quant_drop, bool try_offer )
{
mpr("You will have to take that off first.");
}
- else
+ else if (check_warning_inscriptions(you.inv[item_dropped],
+ OPER_TAKEOFF))
{
// If we take off the item, cue up the item being dropped
if (takeoff_armour( item_dropped ))
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index 69e4f0def4..bca20c367f 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -2324,7 +2324,7 @@ bool random_near_space(const coord_def& origin, coord_def& target,
return (true);
// If the monster is on a visible square which is on the other
- // side of one or more translucent from the player, then it
+ // side of one or more translucent walls from the player, then it
// can only blink through translucent walls if the end point
// is either not visible to the player, or there are at least
// as many translucent walls between the player and the end
diff --git a/crawl-ref/source/view.cc b/crawl-ref/source/view.cc
index 4cbd7f586e..46cb73c139 100644
--- a/crawl-ref/source/view.cc
+++ b/crawl-ref/source/view.cc
@@ -2877,8 +2877,9 @@ void losight(env_show_grid &sh,
dungeon_feature_type dfeat = grid_appearance(gr, real);
// if this cell is opaque...
+ // ... or something you can see but not walk through ...
if (grid_is_opaque(dfeat)
- || clear_walls_block && grid_is_wall(dfeat))
+ || clear_walls_block && dfeat < DNGN_MINMOVE)
{
// then block the appropriate rays
for (unsigned int i = 0; i < num_words; ++i)