summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/beam.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/crawl-ref/source/beam.cc b/crawl-ref/source/beam.cc
index 78cd63f25e..89c383336e 100644
--- a/crawl-ref/source/beam.cc
+++ b/crawl-ref/source/beam.cc
@@ -1792,8 +1792,9 @@ void bolt::hit_wall()
const dungeon_feature_type feat = grd(pos());
ASSERT( grid_is_solid(feat) );
- if (is_tracer && YOU_KILL(thrower) && flavour != BEAM_DIGGING
- && flavour <= BEAM_LAST_REAL && pos() != target && pos() != source
+ if (is_tracer && YOU_KILL(thrower) && in_bounds(target)
+ && pos() != target && pos() != source
+ && flavour != BEAM_DIGGING && flavour <= BEAM_LAST_REAL
&& !affects_nothing && bounces == 0 && reflections == 0
&& see_grid(target) && !grid_is_solid(grd(target)))
{