summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monster.cc
diff options
context:
space:
mode:
authorDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-05 15:34:51 -0600
committerDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-05 15:36:18 -0600
commit361c86ab3c3017c9136cde225058f25e9f96a822 (patch)
treea67508175f1c2a51a3c6260b943d038f40d19168 /crawl-ref/source/monster.cc
parentdc3f573c6ef467ddcc4a837ce90ca9df3b502c2e (diff)
downloadcrawl-ref-361c86ab3c3017c9136cde225058f25e9f96a822.tar.gz
crawl-ref-361c86ab3c3017c9136cde225058f25e9f96a822.zip
In is_evil(), mark player followers and monster priests of evil gods.
Diffstat (limited to 'crawl-ref/source/monster.cc')
-rw-r--r--crawl-ref/source/monster.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/crawl-ref/source/monster.cc b/crawl-ref/source/monster.cc
index 74fbdeb27d..f38f6fcd7a 100644
--- a/crawl-ref/source/monster.cc
+++ b/crawl-ref/source/monster.cc
@@ -2851,7 +2851,17 @@ mon_holy_type monsters::holiness() const
bool monsters::is_evil() const
{
- return (is_unholy() || mons_class_flag(type, M_EVIL));
+ if (is_unholy())
+ return (true);
+
+ // Assume that unknown gods are evil.
+ if (is_priest() && (is_evil_god(god) || god == GOD_NAMELESS))
+ return (true);
+
+ if (mons_class_flag(type, M_EVIL))
+ return (true);
+
+ return (false);
}
bool monsters::is_unholy() const