diff --git a/crawl-ref/source/mon-gear.cc b/crawl-ref/source/mon-gear.cc index d34f1b7623d..d003461702a 100644 --- a/crawl-ref/source/mon-gear.cc +++ b/crawl-ref/source/mon-gear.cc @@ -1491,9 +1491,14 @@ static void _give_weapon(monster *mon, int level, bool second_weapon = false, return; } - const auto real_type = mons_is_zombified(*mon) ? mons_zombie_base(*mon) - : mon->type; - const int thing_created = make_mons_weapon(real_type, level, second_weapon, + monster_type for_type = mon->type; + if (mons_is_zombified(*mon)) + { + for_type = mons_zombie_base(*mon); + level = ISPEC_DAMAGED; + } + + const int thing_created = make_mons_weapon(for_type, level, second_weapon, !second_weapon && force_archer); if (thing_created == NON_ITEM) return;