summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/mon-util.cc3
-rw-r--r--crawl-ref/source/monstuff.cc4
2 files changed, 4 insertions, 3 deletions
diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc
index 900aad254d..d236ee389c 100644
--- a/crawl-ref/source/mon-util.cc
+++ b/crawl-ref/source/mon-util.cc
@@ -802,7 +802,8 @@ bool mons_is_zombified(const monsters *mon)
bool mons_class_can_be_zombified(int mc)
{
int ms = mons_species(mc);
- return (mons_zombie_size(ms) != Z_NOZOMBIE || mons_weight(ms) == 0);
+ return (mons_zombie_size(ms) != Z_NOZOMBIE
+ && mons_weight(ms) != 0);
}
bool mons_can_be_zombified(const monsters *mon)
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index c0cce9d350..2af65b8093 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -1057,9 +1057,9 @@ void monster_die(monsters *monster, killer_type killer,
}
if (you.duration[DUR_DEATH_CHANNEL]
- && gives_xp
&& mons_holiness(monster) == MH_NATURAL
- && mons_weight(mons_species(monster->type) > 0))
+ && mons_can_be_zombified(monster)
+ && gives_xp)
{
const monster_type spectre = mons_species(monster->type);