По поводу второй камеры
Скорее всего, на объекте просо нет такого компонента. На всякий случае, добавте атрибут RequireComponentr(typeof(Camera)) перед классом скрипта. Затем удалить скрипт с объекта и повесьте опять.
Или же назначьте камеру в инспекторе ручную
А почему бы просто не использовать void OnMouseDown() на самой постройке? Вы, по сути, это и делаете, только через костыль. Если, конечно, за экраном нет невидимой стенки.