From 0bdad6413abe036f2e70c271f465a2da181b4116 Mon Sep 17 00:00:00 2001 From: zelgadis Date: Fri, 29 May 2009 04:44:23 +0000 Subject: Add bounds checking to line-of-fire warning code. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9846 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/beam.cc | 5 +++-- 1 file 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))) { -- cgit v1.2.3-54-g00ecf