Better LoS algorithm. Needs refactored.