crude line of sight algorithm implemented partially