День добрый! Суть вопроса: У меня есть кнопка, и если войти в её триггер она активируется(OnButtonStay()), а если выйти, собственно, деактивируется(OnButtonExit()), но если объект войдёт в её триггер и затем исчезнет(SetActive(false)), то кнопка останется активной(OnButtonStay()). Так вот, как сделать так, чтобы скрипт проверял нахождение объекта в триггере, и в случае его исчезновения или пропажи, просто деактивировал кнопку(OnButtonExit()).
Буду очень благодарен за помощь!
using UnityEngine;
public class ButtonTrigger : MonoBehaviour
{
[SerializeField] private Animator _anim;
[SerializeField] private MeshRenderer _buttonbase;
[SerializeField] private Texture _materialOff;
[SerializeField] private Texture _materialOn;
[SerializeField] private AudioSource _onSound;
[SerializeField] private AudioSource _offSound;
private bool _isDown;
private void Start()
{
_anim.SetBool("isDown", !_isDown);
}
private void OnTriggerStay(Collider other)
{
if (other)
{
OnButtonStay();
}
}
private void OnTriggerExit(Collider other)
{
if (other)
{
OnButtonExit();
}
}
private void OnButtonStay()
{
_anim.SetBool("isDown", _isDown);
_buttonbase.material.mainTexture = _materialOn;
}
private void OnButtonExit()
{
_anim.SetBool("isDown", !_isDown);
_buttonbase.material.mainTexture = _materialOff;
}