diff options
Diffstat (limited to 'crawl-ref')
-rw-r--r-- | crawl-ref/source/beam.cc | 19 | ||||
-rw-r--r-- | crawl-ref/source/spells4.cc | 2 |
2 files changed, 10 insertions, 11 deletions
diff --git a/crawl-ref/source/beam.cc b/crawl-ref/source/beam.cc index 2fb6c3764e..af64208352 100644 --- a/crawl-ref/source/beam.cc +++ b/crawl-ref/source/beam.cc @@ -2817,17 +2817,6 @@ void bolt::affect_endpoint() return; } - if (flavour >= BEAM_POTION_STINKING_CLOUD && flavour <= BEAM_POTION_RANDOM) - { - int newcolour = _potion_beam_flavour_to_colour(flavour); - if (newcolour >= 0) - colour = newcolour; - - ex_size = std::max(1, ex_size); - explode(); - return; - } - if (is_tracer) return; @@ -5076,7 +5065,15 @@ void bolt::refine_for_explosion() seeMsg = "The potion explodes!"; hearMsg = "You hear an explosion!"; if (!is_tracer) + { + name = "cloud"; + ASSERT(flavour >= BEAM_POTION_STINKING_CLOUD + && flavour <= BEAM_POTION_RANDOM); + const int newcolour = _potion_beam_flavour_to_colour(flavour); + if (newcolour >= 0) + colour = newcolour; + } } if (seeMsg == NULL) diff --git a/crawl-ref/source/spells4.cc b/crawl-ref/source/spells4.cc index 8fb66e66a6..fc94aec174 100644 --- a/crawl-ref/source/spells4.cc +++ b/crawl-ref/source/spells4.cc @@ -1251,6 +1251,8 @@ bool cast_evaporate(int pow, bolt& beem, int pot_idx) beem.hit = you.dex / 2 + roll_dice( 2, you.skills[SK_THROWING] / 2 + 1 ); beem.damage = dice_def( 1, 0 ); // no damage, just producing clouds beem.ench_power = pow; // used for duration only? + beem.is_explosion = true; + beem.range = 8; beem.flavour = BEAM_POTION_STINKING_CLOUD; beam_type tracer_flavour = BEAM_MMISSILE; |