Первое, что приходит в голову это сделать для индикатора здоровья скрипт, в котором в Update обновлять значение из модели. И это рабочий вариант, однако, он имеет ряд неудобств. В частности под каждую отображаему на экране сущность (здоровье, опыт, уровень, щит и т.п.) придётся делать отдельные скрипты, буквально на несколько строчек. Вторая проблема - обновляться информация будет каждый кадр, а значит будет прилично затормаживать игру. Не всегда же опыт или здоровье меняется каждый кадр и уж тем более уровень!
Обновлять в апдейте UI - зло. Просто удар по производительности. Так что переход к событиям оправдан.
Можно посмотреть ещё библиотеку UniRx, но если текущая проблема вызвала вопросы, возможно, смотреть в сторону реактивов ещё рано.
P.S от событий надо не забывать отписываться, а то можно словить утечки памяти и нулл рефы.
P.P.S проставить стартовые параметры можно в том же месте, где передается объект, на который можно подписываться (ты же, надеюсь, через код это делаешь, а не через эдитор?)
>P.S от событий надо не забывать отписываться, а то можно словить утечки памяти и нулл рефы.Про отписку-то понятно, спасибо. Утечек нам не надо. Жаль, что шарпы сами не отписываются при смерти слушателя.
>P.P.S проставить стартовые параметры можно в том же месте, где передается объект, на который можно подписываться (ты же, надеюсь, через код это делаешь, а не через эдитор?)Конечно через код. Оно сейчас в коде и инициализируется так при подписке. Но мне отчего-то не нравится так, некрасиво и не универсально, есть шанс что-то пропустить.
Я посмотрел предыдущие посты. Точно переходи на UniRx)