Есть несколько возможных причин, по которым метод SetActive может не работать:
1. Объект может быть неактивным из-за другого компонента или скрипта. Проверьте все компоненты и скрипты, связанные с объектом, чтобы убедиться, что они не перекрывают или устанавливают активность объекта на противоположное значение.
2. Проверьте, что объект, который вы пытаетесь активировать, имеет правильное имя и путь в иерархии объектов. Иногда неправильное указание пути к объекту может привести к тому, что метод SetActive не сработает.
3. Убедитесь, что у вас активировано правильное состояние объекта. Например, если объект уже активирован, вызов метода SetActive(true) на нем не приведет к изменениям. Вместо этого попробуйте использовать метод SetActive(false), чтобы сначала деактивировать объект, а затем активировать его снова.
Если метод SetActive по-прежнему не работает, можно попробовать использовать другие методы для изменения видимости объекта. Например, можно установить значение свойства объекта Renderer.enabled или включить и выключить компоненты, связанные с объектом.
Для отображения магазина при клике в кликере без использования метода SetActive, можно использовать анимацию или перемещение объекта. Например, можно создать анимацию, которая изменяет положение или масштаб магазина, чтобы он был видимым при клике. Или можно изменить свойство объекта, такое как Renderer.enabled, чтобы отобразить магазин.