summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/misc.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/misc.cc')
-rw-r--r--crawl-ref/source/misc.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/crawl-ref/source/misc.cc b/crawl-ref/source/misc.cc
index 58bca496ba..a2f099a45d 100644
--- a/crawl-ref/source/misc.cc
+++ b/crawl-ref/source/misc.cc
@@ -3065,13 +3065,17 @@ bool is_dragonkind(const actor *act, const monsters *mon)
return (true);
}
- if (act->atype() == ACT_PLAYER
- && you.attribute[ATTR_TRANSFORMATION] == TRAN_DRAGON)
+ if (act->atype() == ACT_PLAYER)
{
- return (true);
+ return (you.attribute[ATTR_TRANSFORMATION] == TRAN_DRAGON
+ || you.attribute[ATTR_TRANSFORMATION] == TRAN_SERPENT_OF_HELL);
}
- else if (act->atype() == ACT_MONSTER
- && mons_is_zombified(mon)
+ // else the actor is a monster
+
+ if (mon->type == MONS_SERPENT_OF_HELL)
+ return (true);
+
+ if (mons_is_zombified(mon)
&& (mons_genus(mon->base_monster) == MONS_DRAGON
|| mons_genus(mon->base_monster) == MONS_DRACONIAN))
{