 		if _.isFunction opts then [opts, cb] = [{}, opts]
 		opts.range ?= Infinity
 
+		checked = []
+
 		found = { type: 'none' }
 
 		bresenhamLine @, to, (x, y) =>
 			return no if (@distanceSqTo {x, y}) > (opts.range * opts.range)
 
+			checked.unshift {x, y}
 			return if x is @x and y is @y
 
 			if @map.collidable x, y


		found = @raytraceUntilBlocked endPos, range: 15

		endPos = found if found.type is 'creature'

		game.renderer.effectLine @, endPos,
			delay: 50

				}
				return no

		found.checked = checked

		found

	collidable: (x, y) ->
