Тема: MonkeyBehaviour
Показать сообщение отдельно
Старый 18.08.2016, 06:14   #8
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: MonkeyBehaviour

Просто при старте игры проверять код на наличие нужных функций и если есть, то делать из найденных функций делегат
а куда денется исходный метод, он же останется.
например, если завернуть Update в делегат.
или ты про другой случай? какой?

Также можно расширить MonoBehaviour или Component своими функциями и использовать их.
Как вариант - навешивать на корневой объект сцены некий менеджер скриптов, который пробежит по всем дочерним объектам и компонентам, соберёт все экземпляры твоего переопределённого Behaviour'а, и менеджер будет в юнитевских методах Start, Update и прочих пробегать по спискам и вызывать делегаты.
По части Update получается модель привычного gameloop'a, где все логики перебираются и выполняются.

Однако, тогда не получим фушку с очередностью выполнения скриптов. Но можно наверное и с ней заморочиться.
Это всё теория, даст ли оно профит, чтоб стоило с этим извращаться.)

Пример с классом Message - тормозное решение, конечно.
Да и вызов через строковое имя метода опасен - отрефакторишь имя функции и "привет".

Последний раз редактировалось Жека, 18.08.2016 в 07:53.
(Offline)
 
Ответить с цитированием