summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/mon-util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/mon-util.cc')
-rw-r--r--crawl-ref/source/mon-util.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc
index 3f2f71c123..76718e6c67 100644
--- a/crawl-ref/source/mon-util.cc
+++ b/crawl-ref/source/mon-util.cc
@@ -292,13 +292,16 @@ const mon_resist_def &get_mons_class_resists(int mc)
mon_resist_def get_mons_resists(const monsters *mon)
{
+ mon_resist_def resists;
if (mon->type == MONS_PLAYER_GHOST || mon->type == MONS_PANDEMONIUM_DEMON)
- return (mon->ghost->resists);
+ resists = (mon->ghost->resists);
+ else
+ resists = mon_resist_def();
+
+ resists |= get_mons_class_resists(mon->type);
- mon_resist_def resists = get_mons_class_resists(mon->type);
- if ((mons_genus(mon->type) == MONS_DRACONIAN &&
- mon->type != MONS_DRACONIAN) ||
- mon->type == MONS_TIAMAT)
+ if (mons_genus(mon->type) == MONS_DRACONIAN && mon->type != MONS_DRACONIAN
+ || mon->type == MONS_TIAMAT)
{
monster_type draco_species = draco_subspecies(mon);
if (draco_species != mon->type)