Вы можете использовать UnityEvent API.
Это не лучшее решение, и есть несколько способов сделать это, но если вы пытаетесь решить проблему быстро, вы можете, например, создать UnityEvent в своем ящикеclass.
Вам необходимо добавить пространство имен:
using UnityEngine.Events;
и в качестве переменной:
UnityEvent event = new UnityEvent();
Это, вероятно, создаст новое событие (очень похоже накнопка) на вашем ящике класса.Следующим шагом является создание метода, который будет включать или отключать коллайдер внутри вашего класса ключей.Метод должен быть публичным.
После этого просто перейдите в свой ящик GameObject, нажмите на знак «+», перетащите в него свой Key GameObject и выберите класс и открытый метод, который вы только что создали.Это подпишет этот метод на событие.
Наконец, в вашем методе «открыть ящик» вы просто вызываете:
event.Invoke();
И все «слушающие» его будут выполняться, включаяваш класс.