summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monstuff.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/monstuff.cc')
-rw-r--r--crawl-ref/source/monstuff.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index ede0784ae7..f2549cd11d 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -775,6 +775,9 @@ void monster_die(monsters *monster, killer_type killer,
// Update list of monsters beholding player.
update_beholders(monster, true);
+ // Clear auto exclusion now the monster is killed.
+ remove_auto_exclude(monster);
+
const int monster_killed = monster_index(monster);
const bool hard_reset = testbits(monster->flags, MF_HARD_RESET);
const bool gives_xp = !monster->has_ench(ENCH_ABJ);
@@ -7603,6 +7606,11 @@ void seen_monster(monsters *monster)
// First time we've seen this particular monster.
monster->flags |= MF_SEEN;
+ // If the monster is in the auto_exclude list, automatically
+ // set an exclusion.
+ if (need_auto_exclude(monster) && !is_exclude_root(monster->pos()))
+ toggle_exclude(monster->pos());
+
if (!mons_is_mimic(monster->type)
&& MONST_INTERESTING(monster)
&& monster->type != MONS_PANDEMONIUM_DEMON