diff options
author | Adam Borowski <kilobyte@angband.pl> | 2009-12-15 00:01:58 +0100 |
---|---|---|
committer | Adam Borowski <kilobyte@angband.pl> | 2009-12-15 00:06:49 +0100 |
commit | f5ad2d06f0bac4de0a61d97b8887b70616006969 (patch) | |
tree | 58296a0761e58ecc58107a6ea530fbbd7ccccd84 /crawl-ref/source/travel.cc | |
parent | 08b32044b9fe15e1026a463da9d3d4cad19b3942 (diff) | |
download | crawl-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.cc | 12 |
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); } |