Система событий Unity с объектами Scriptable: как полностью избежать использования синглтона - PullRequest
0 голосов
/ 12 октября 2018

У меня есть объект сценариев, который я создаю из MonoBehaviour.Я могу общаться между обоими и поднимать события соответственно.Но в моей сцене есть больше MonoBehaviours, которые тоже должны делать что-то другое с помощью сценариев.И объект сценариев «принадлежит» тому конкретному MonoBehaviour, в котором он был создан.

Поэтому мой вопрос: как я могу получить доступ к объекту сценариев, созданным «MonoBehaviour A» из «MonoBehaviour B», «MonoBehaviour C», "MonoBehaviour D" и т. Д.?

Сейчас я делаю "Monobehaviour A" синглтоном, чтобы он был доступен для других MonoBehaviours в сцене.

1 Ответ

0 голосов
/ 13 октября 2018

Вы можете использовать Resources.FindObjectsOfTypeAll, чтобы найти все экземпляры ScriptableObject определенного типа.

Если есть только один (что я предполагаю, так как вы используетеsingleton) в вашем MonoBehaviours вы можете использовать

var scriptableObject = Resources.FindObjectsOfTypeAll(typeof(YOUR_SCRIPTABLE_CLASS))[0];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...