summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/beam.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/beam.cc')
-rw-r--r--crawl-ref/source/beam.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/crawl-ref/source/beam.cc b/crawl-ref/source/beam.cc
index 71c70980a5..f87f644de4 100644
--- a/crawl-ref/source/beam.cc
+++ b/crawl-ref/source/beam.cc
@@ -2722,13 +2722,18 @@ static int affect_place_clouds(struct bolt &beam, int x, int y)
// FIRE/COLD over water/lava
if ( (grd[x][y] == DNGN_LAVA && beam.flavour == BEAM_COLD)
- || ((grd[x][y] == DNGN_DEEP_WATER || grd[x][y] == DNGN_SHALLOW_WATER)
- && beam.flavour == BEAM_FIRE) )
+ || (grid_is_watery(grd[x][y]) && beam.flavour == BEAM_FIRE) )
{
cloud_type = YOU_KILL(beam.thrower) ? CLOUD_STEAM : CLOUD_STEAM_MON;
place_cloud( cloud_type, x, y, 2 + random2(5) );
}
+ if (beam.flavour == BEAM_COLD && grid_is_watery(grd[x][y]))
+ {
+ cloud_type = YOU_KILL(beam.thrower) ? CLOUD_COLD : CLOUD_COLD_MON;
+ place_cloud( cloud_type, x, y, 2 + random2(5) );
+ }
+
// ORB OF ENERGY
if (beam.name == "orb of energy")
place_cloud( CLOUD_PURP_SMOKE, x, y, random2(5) + 1 );