summaryrefslogtreecommitdiffstats
path: root/crawl-ref
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref')
-rw-r--r--crawl-ref/source/item_use.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc
index 85bd75d4db..cf13353bb6 100644
--- a/crawl-ref/source/item_use.cc
+++ b/crawl-ref/source/item_use.cc
@@ -2048,9 +2048,19 @@ bool setup_missile_beam(const actor *agent, bolt &beam, item_def &item,
|| ammo_brand == SPMSL_ELECTRIC;
const bool blessed = bow_brand == SPWPN_HOLY_WRATH
&& ammo_brand != SPMSL_REAPING;
+ const bool flaming = bow_brand == SPWPN_FLAME
+ || ammo_brand == SPMSL_FLAME;
ASSERT(!exploding || !is_artefact(item));
+ if (flaming && poisoned)
+ ; // Do nothing. A specific exclusion to launcher not overwriting
+ // ammunition brands.
+ else
+ // XXX: Launcher brand does not affect its ammunition. This may change.
+ if (ammo_brand != SPMSL_NORMAL && bow_brand != SPWPN_NORMAL)
+ bow_brand = SPWPN_NORMAL;
+
beam.name = item.name(DESC_PLAIN, false, false, false);
// Print type of item as influenced by launcher.