Как скрыть пользовательский интерфейс на объекте (UI с GameObject)?

Как можно скрыть текст, отображающий количество патронов при прокручивании колёсика мыши в WeaponHolder, чтобы он менялся только после скрытия оружия?
  • 26 августа 2024 г. 8:54
Ответы на вопрос 2
Для скрытия пользовательского интерфейса на объекте можно использовать метод SetActive(false) на соответствующих UI элементах. Например, если у вас есть GameObject с UI элементами, вы можете в скрипте вызвать метод SetActive(false) для этого объекта, чтобы скрыть его.

Чтобы скрыть текст, отображающий количество патронов при прокрутке колесика мыши в WeaponHolder, вы можете добавить проверку на активность оружия перед изменением текста. Например, вы можете создать переменную типа bool, которая будет указывать, отображается ли оружие в данный момент, и при прокрутке колесика мыши проверять это значение перед изменением текста с количеством патронов. Например:

```c#
public Text ammoText;
public bool isWeaponActive = true;

void Update()
{
    if(Input.GetAxis("Mouse ScrollWheel") != 0)
    {
        if(isWeaponActive)
        {
            // Update ammo text
        }
    }
}

public void HideWeapon()
{
    // Скрыть оружие (например, используя метод SetActive(false) на GameObject с оружием)
    isWeaponActive = false;
}
```

Вы можете вызвать метод HideWeapon(), когда хотите скрыть оружие и запретить изменение текста с количеством патронов.
Зачем судить по Debug…Берем ссылку на ui текст патронов и SetActive
Похожие вопросы