diff options
-rw-r--r-- | crawl-ref/source/mon-util.cc | 3 | ||||
-rw-r--r-- | crawl-ref/source/monstuff.cc | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/crawl-ref/source/mon-util.cc b/crawl-ref/source/mon-util.cc index 70e6c39b67..900aad254d 100644 --- a/crawl-ref/source/mon-util.cc +++ b/crawl-ref/source/mon-util.cc @@ -807,7 +807,8 @@ bool mons_class_can_be_zombified(int mc) bool mons_can_be_zombified(const monsters *mon) { - return (mons_class_can_be_zombified(mon->type)); + return (mons_class_can_be_zombified(mon->type) + && !mons_is_summoned(mon)); } int downscale_zombie_damage(int damage) diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 0a34779e12..c0cce9d350 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -781,7 +781,7 @@ void monster_die(monsters *monster, killer_type killer, const int monster_killed = monster_index(monster); const bool hard_reset = testbits(monster->flags, MF_HARD_RESET); - const bool gives_xp = !monster->has_ench(ENCH_ABJ); + const bool gives_xp = !mons_is_summoned(monster); bool in_transit = false; bool drop_items = !hard_reset && !mons_is_holy(monster); @@ -1059,7 +1059,7 @@ 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))) + && mons_weight(mons_species(monster->type) > 0)) { const monster_type spectre = mons_species(monster->type); |