Можно. Для этого есть метод у камеры WorldToScreenPoint, который даст вам координаты точки на экране (даже если она за экраном). И достаточно будет сравнить с размерами экрана
Используй массив (а еще лучше list) не примитивов, а классов.
Заводишь класс "награда". У него два поля - сама награда и процент. И уже хранишь массив наград
Учите сишарп сначала, не лезьте в юнити.
Random.Range ожидает 2 float, а вы ему какой то InputField пихаете. А что если в InputField пусто, строка, смайлик, еще что?
Ну так вы бы хотя бы логи вывели, что там в аутентификации.
Но 99% что вы не все настроили. Где то в менюхах юнити должна появиться настройка плагина и там надо еще пачку всякого попрописывать.
Не надо это делать "в лоб" как камеру. Решайте этот вопрос геометрически.
Если от врага до игрока небольшое расстояние И игрок попадает в сектор зрения (тоже обычная геометрическая формула) И между игроком и и противником нет стен (вот тут рейкаст) - то он в поле зрения.
Можно конечно чистым рейкастом сделать, или вообще на коллайдерах.