diff options
author | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-02-05 14:09:48 +0000 |
---|---|---|
committer | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2009-02-05 14:09:48 +0000 |
commit | f69ba51dd364f66462af1a099193de467312407f (patch) | |
tree | 8284e9ad7518d3d75de4806ce33876a8b2402e45 /crawl-ref/source/directn.cc | |
parent | 37a8bc70c5fab0c3e50a0ea735f562d4089e5283 (diff) | |
download | crawl-ref-f69ba51dd364f66462af1a099193de467312407f.tar.gz crawl-ref-f69ba51dd364f66462af1a099193de467312407f.zip |
Possible fix for 2530342: full_describe_view() iterating over the viewport
instead of over LOS squares.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8901 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/directn.cc')
-rw-r--r-- | crawl-ref/source/directn.cc | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/crawl-ref/source/directn.cc b/crawl-ref/source/directn.cc index b2c8247267..9a10ab20b3 100644 --- a/crawl-ref/source/directn.cc +++ b/crawl-ref/source/directn.cc @@ -450,27 +450,26 @@ static void _describe_monster(const monsters *mon); // TODO: Allow sorting of items lists. void full_describe_view() { - const coord_def start = view2grid(coord_def(1,1)); - const coord_def end = start + crawl_view.viewsz - coord_def(1,1); - std::vector<const monsters*> list_mons; std::vector<item_def> list_items; - // Iterate over viewport and grab all items known (or thought) - // to be in the stashes in view. - for (rectangle_iterator ri(start, end); ri; ++ri) + // Grab all items known (or thought) to be in the stashes in view. + for (radius_iterator ri(you.pos(), LOS_RADIUS); ri; ++ri) { - if (!in_bounds(*ri) || !see_grid(*ri)) - continue; - const int oid = igrd(*ri); - if (oid == NON_ITEM) continue; std::vector<item_def> items = item_list_in_stash(*ri); + +#ifdef DEBUG_DIAGNOSTICS if (items.empty()) - continue; + { + mprf(MSGCH_ERROR, "No items found in stash, but top item is %s", + mitm[oid].name(DESC_PLAIN).c_str()); + more(); + } +#endif list_items.insert(list_items.end(), items.begin(), items.end()); } |