summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-util.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-07-19 12:31:32 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-07-19 12:31:32 +0000
commitab679653017c1d661572cf34a62bf5ddf7c1304e (patch)
tree359b57bcf3e60574d64ce9c6ee4ca54a2d788807 /crawl-ref/source/mon-util.cc
parent73eb0f77865d30c6da027b85c716bce7edd3fa1b (diff)
downloadcrawl-ref-ab679653017c1d661572cf34a62bf5ddf7c1304e.tar.gz
crawl-ref-ab679653017c1d661572cf34a62bf5ddf7c1304e.zip
Added elf arrival vaults (Eino).
Tweaked dungeon builder so you always land on { on level 1 of a branch (using a map marker to identify which stair was a {). Maps with the "uniq" tag will be used only once in a game. Maps with a "uniq_foo" tag will be used only once, and will also prevent any other maps tagged "uniq_foo" from being used thereafter. Breaks saves. Oklob plants should not receive stab brands, fixed. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1897 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/mon-util.cc')
-rw-r--r--crawl-ref/source/mon-util.cc20
1 files changed, 12 insertions, 8 deletions
diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc
index 7fb476eadb..5a8842e967 100644
--- a/crawl-ref/source/mon-util.cc
+++ b/crawl-ref/source/mon-util.cc
@@ -312,6 +312,14 @@ bool mons_is_stationary(const monsters *mons)
return (mons_class_is_stationary(mons->type));
}
+bool mons_behaviour_perceptible(const monsters *mons)
+{
+ return (!mons_class_flag(mons->type, M_NO_EXP_GAIN)
+ && !mons_is_mimic(mons->type)
+ && !mons_is_statue(mons->type)
+ && mons->type != MONS_OKLOB_PLANT);
+}
+
bool mons_is_icy(const monsters *mons)
{
return (mons_is_icy(mons->type));
@@ -1667,18 +1675,14 @@ bool mons_is_known_mimic(const monsters *m)
bool mons_looks_stabbable(const monsters *m)
{
- return (!mons_class_flag(m->type, M_NO_EXP_GAIN)
- && !mons_is_mimic(m->type)
- && !mons_is_statue(m->type)
- && !mons_friendly(m)
- && mons_is_sleeping(m));
+ return (mons_behaviour_perceptible(m)
+ && !mons_friendly(m)
+ && mons_is_sleeping(m));
}
bool mons_looks_distracted(const monsters *m)
{
- return (!mons_class_flag(m->type, M_NO_EXP_GAIN)
- && !mons_is_mimic(m->type)
- && !mons_is_statue(m->type)
+ return (mons_behaviour_perceptible(m)
&& !mons_friendly(m)
&& ((m->foe != MHITYOU && !mons_is_batty(m))
|| mons_is_confused(m)