function util.FindInCylinder(cylinderOrigin, cylinderAngles, cylinderHeight, cylinderRadius) local found = {} for _,ent in pairs(ents.GetAll()) do local t = (cylinderAngles:Forward():Dot(ent:LocalToWorld(ent:OBBCenter()) - cylinderOrigin)) / (cylinderAngles:Forward():Dot(cylinderAngles:Forward())) local p = cylinderOrigin + (cylinderAngles:Forward() * t) if t <= cylinderHeight and ent:NearestPoint(p):Distance(p) <= cylinderRadius then table.insert(found, ent) end end return foundend