diff options
Diffstat (limited to 'crawl-ref/source/makeitem.cc')
-rw-r--r-- | crawl-ref/source/makeitem.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/crawl-ref/source/makeitem.cc b/crawl-ref/source/makeitem.cc index 9897f63201..1c5773419e 100644 --- a/crawl-ref/source/makeitem.cc +++ b/crawl-ref/source/makeitem.cc @@ -3707,6 +3707,17 @@ static void _give_ammo(monsters *mon, int level, _got_curare_roll(level) ? SPMSL_CURARE : SPMSL_POISONED); } + else + { + // Sanity check to avoid useless brands. + const int bow_brand = get_weapon_brand(*launcher); + const int ammo_brand = get_ammo_brand(mitm[thing_created]); + if (ammo_brand != SPMSL_NORMAL + && (bow_brand == SPWPN_FLAME || bow_brand == SPWPN_FROST)) + { + mitm[thing_created].special = SPMSL_NORMAL; + } + } // Master archers get double ammo - archery is their only attack. if (mon->type == MONS_DEEP_ELF_MASTER_ARCHER) |