Полезное

Мы Вконтакте

Discord канал

#
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 183
Товарищи, такой вопрос. Здоровье перса каждую секунду убывает по чуть-чуть, это отображается на прогресс баре - виджете Progress. За это отвечает переменная Decrease. Переменную Decrease я устанавливаю в другом блупринте. Соответственно, в нём мне надо обратиться к виджету. Если я делаю это через Каст, то Анрил ругается жёлтым Ворнингом при компиляции - резонно, зачем мне каст, если переменную Decrease я могу вытащить прямо из отсылки на Widget Progress.
Изображение

Но!
Если я не делаю Каст и вытаскиваю Decrease прямо из отсылки на Widget Progress, то при компиляции всё нормально. И в игре всё работает как надо. Но как только я выхожу из режима игры на Esc, то вылетает такая ошибка.
Изображение

Работает в обоих случаях. Но почему он ругается когда я не делаю Каст - я не понимаю.
Аватара пользователя
Пользователь
Сообщения: 2319
вызов евента Gooo идет до того как назначена WidgetProgress... хм...
is valid проверку попробовать сделать.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 183
Snake писал(а):
вызов евента Gooo идет до того как назначена WidgetProgress... хм...
is valid проверку попробовать сделать.

Snake, спасибо, предположение верное!
is valid делать не понадобилось - просто переместил вызов ивента Gooo в конец цепочки Бегин плэя, после создания виджета - и всё стало норм. Ругаться перестало.
Кстати, интересно, если делать другой нодой, без диспетчера и необходимости вызывать ивент вручную - то не ругается и без каста хоть сам нод Set timer by function name стоит до создания виджета.
Изображение
Аватара пользователя
Пользователь
Сообщения: 12
Да логика в том, что пытается взять переменную до того как хранитель переменной создан или после его разрушения. Но я бы хотел добавить одну неприятную вещь, даже делая все по порядку одним потоком сталкнулся с проблемой, что UMG опаздывают. Это не только в моем коде я видел несколько сообщений об этом в том числе на стриме Эпиков. Дебажил 4 часа код, в который должен был работать, но не работал, решением было добавить в поток Delay в 0,001 что меньше одного кадра или если хотите просто 0 что будет равно одному кадру. Учитывайте это запоздание при общении с UMG!


Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница