summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/monster.cc
diff options
context:
space:
mode:
authorDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-05 14:51:19 -0600
committerDavid Lawrence Ramsey <dolorous@users.sourceforge.net>2009-11-05 14:59:05 -0600
commitb5ea5e1bc66f90cf3644dabac2d9c00697e68d4d (patch)
tree6f884fd52c4f96222ded2949c76bba9e5eb38f1b /crawl-ref/source/monster.cc
parent823bd7c3cb7d42efad29de3d98d3def28aa4c63f (diff)
downloadcrawl-ref-b5ea5e1bc66f90cf3644dabac2d9c00697e68d4d.tar.gz
crawl-ref-b5ea5e1bc66f90cf3644dabac2d9c00697e68d4d.zip
Create an is_evil() function in the actor interface.
Currently, only unholy monsters are marked as evil this way.
Diffstat (limited to 'crawl-ref/source/monster.cc')
-rw-r--r--crawl-ref/source/monster.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/crawl-ref/source/monster.cc b/crawl-ref/source/monster.cc
index f8ef9febe5..74fbdeb27d 100644
--- a/crawl-ref/source/monster.cc
+++ b/crawl-ref/source/monster.cc
@@ -2849,6 +2849,11 @@ mon_holy_type monsters::holiness() const
return (mons_class_holiness(type));
}
+bool monsters::is_evil() const
+{
+ return (is_unholy() || mons_class_flag(type, M_EVIL));
+}
+
bool monsters::is_unholy() const
{
const mon_holy_type holi = holiness();
@@ -3080,7 +3085,7 @@ int monsters::res_rotting() const
int monsters::res_holy_energy(const actor *attacker) const
{
- if (mons_is_evil(this))
+ if (is_evil())
return (-1);
if (is_unholy())