public Entity LineCast(DVector3 start, DVector3 end, out DVector3 hitPosition, int ignoreTeam = -1) { var result = LineCastAll(start, end, ignoreTeam) .OrderBy(r => map.Distance(start, r.position)) .FirstOrDefault(); if (result == null) { hitPosition = new DVector3(0, 0, 0); return(null); } hitPosition = result.position; return(result.entity); }