Я только начинаю с Unity и очень обрадовался, когда увидел, что система событий существует, и я могу создавать собственные события.Мне нужно событие «IInventoryMessage :: NewItemInInventory», поэтому я продолжил и создал для этого интерфейс, настроил его в своем инвентаре.
Затем пришло время вызвать событие, и документация бросила менянемного.
ExecuteEvents.Execute<IInventoryMessage>(target, null, (x,y)=>x.NewItemInInventory());
Моя путаница заключается в том, что кажется, что это проходит в target
.
Я надеюсь, что Единство будет отслеживать всекомпоненты с интерфейсом сообщения и вызывать его, когда оно было выполнено.Но, похоже, я должен передать GameObject сам.
Это тот случай, когда я должен сохранить список всех GameObjects, которые я хочу получить, и цикл над ними, чтобы передать ихв Execute
?Зачем мне нужна EventSystem в этот момент, если я уже зацикливаюсь на объектах, которые, как я знаю, должны быть вызваны?