diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-06-07 11:59:04 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-06-07 11:59:04 +0000 |
commit | 2acc952de14e49420641729cd97cf1f236ad0c59 (patch) | |
tree | 1ad5e2e7a5a4923a8b68d3860512579d0003dd47 /crawl-ref/source | |
parent | 4fa98a2fc0bdc9ce571af9f1e839efe6382e1fe6 (diff) | |
download | crawl-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/source')
-rw-r--r-- | crawl-ref/source/items.cc | 3 | ||||
-rw-r--r-- | crawl-ref/source/monstuff.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/view.cc | 3 |
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) |