summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/travel.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2009-12-15 00:01:58 +0100
committerAdam Borowski <kilobyte@angband.pl>2009-12-15 00:06:49 +0100
commitf5ad2d06f0bac4de0a61d97b8887b70616006969 (patch)
tree58296a0761e58ecc58107a6ea530fbbd7ccccd84 /crawl-ref/source/travel.cc
parent08b32044b9fe15e1026a463da9d3d4cad19b3942 (diff)
downloadcrawl-ref-f5ad2d06f0bac4de0a61d97b8887b70616006969.tar.gz
crawl-ref-f5ad2d06f0bac4de0a61d97b8887b70616006969.zip
Make mimics hold the item they're mimicking, instead of fragile hacks with saving RNG state.
Diffstat (limited to 'crawl-ref/source/travel.cc')
-rw-r--r--crawl-ref/source/travel.cc12
1 files changed, 2 insertions, 10 deletions
diff --git a/crawl-ref/source/travel.cc b/crawl-ref/source/travel.cc
index f8e4eb55cb..6da7bc6ee0 100644
--- a/crawl-ref/source/travel.cc
+++ b/crawl-ref/source/travel.cc
@@ -546,11 +546,7 @@ inline static void _check_interesting_square(int x, int y,
if (const monsters *mons = monster_at(pos))
{
if (mons_is_unknown_mimic(mons))
- {
- item_def item;
- get_mimic_item(mons, item);
- ed.found_item(pos, item);
- }
+ ed.found_item(pos, get_mimic_item(mons));
}
if (igrd(pos) != NON_ITEM)
@@ -1084,12 +1080,8 @@ static bool _is_greed_inducing_square(const LevelStashes *ls,
if (const monsters *mons = monster_at(c))
{
if (mons_is_unknown_mimic(mons) && mons_was_seen(mons))
- {
- item_def mimic_item;
- get_mimic_item(mons, mimic_item);
- if (item_needs_autopickup(mimic_item))
+ if (item_needs_autopickup(get_mimic_item(mons)))
return (true);
- }
}
return (false);
}