summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monplace.cc
diff options
context:
space:
mode:
authorzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-17 07:42:11 +0000
committerzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-17 07:42:11 +0000
commitaab5319a5fa4c685f00722c69a3357c64b37ac85 (patch)
tree4b45805cf4bda87f7e41d44b774957028b63b0f6 /crawl-ref/source/monplace.cc
parent841912a64cbeb5e4d798a7df3d4c7ee881aaf5fa (diff)
downloadcrawl-ref-aab5319a5fa4c685f00722c69a3357c64b37ac85.tar.gz
crawl-ref-aab5319a5fa4c685f00722c69a3357c64b37ac85.zip
Added "rare_interesting" game option. Like ood_interesting, but for the
value retruned by mons_rarity(). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5917 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/monplace.cc')
-rw-r--r--crawl-ref/source/monplace.cc27
1 files changed, 17 insertions, 10 deletions
diff --git a/crawl-ref/source/monplace.cc b/crawl-ref/source/monplace.cc
index 2d804281e6..46b8f41630 100644
--- a/crawl-ref/source/monplace.cc
+++ b/crawl-ref/source/monplace.cc
@@ -1769,6 +1769,23 @@ void mark_interesting_monst(struct monsters* monster, beh_type behaviour)
// If it's never going to attack us, then not interesting
else if (behaviour == BEH_FRIENDLY)
interesting = false;
+ else if (you.where_are_you == BRANCH_MAIN_DUNGEON
+ && you.level_type == LEVEL_DUNGEON
+ && mons_level(monster->type) >= you.your_level + _ood_limit()
+ && mons_level(monster->type) < 99
+ && !(monster->type >= MONS_EARTH_ELEMENTAL
+ && monster->type <= MONS_AIR_ELEMENTAL)
+ && !mons_class_flag( monster->type, M_NO_EXP_GAIN ))
+ {
+ interesting = true;
+ }
+ else if ((you.level_type == LEVEL_DUNGEON ||
+ you.level_type == LEVEL_ABYSS)
+ && mons_rarity(monster->type) <= Options.rare_interesting
+ && mons_rarity(monster->type) > 0)
+ {
+ interesting = true;
+ }
// Don't waste time on moname() if user isn't using this option
else if (Options.note_monsters.size() > 0)
{
@@ -1782,16 +1799,6 @@ void mark_interesting_monst(struct monsters* monster, beh_type behaviour)
}
}
}
- else if (you.where_are_you == BRANCH_MAIN_DUNGEON
- && you.level_type == LEVEL_DUNGEON
- && mons_level(monster->type) >= you.your_level + _ood_limit()
- && mons_level(monster->type) < 99
- && !(monster->type >= MONS_EARTH_ELEMENTAL
- && monster->type <= MONS_AIR_ELEMENTAL)
- && !mons_class_flag( monster->type, M_NO_EXP_GAIN ))
- {
- interesting = true;
- }
if (interesting)
monster->flags |= MF_INTERESTING;