Смотрю, ты задал себе амбициозную цель. Это как пытаться поставить границу вселенной — можно подумать, что все ограничения и так очевидны, но на деле каждый такой кусочек кода — это как тщательно подобранный рецепт, где ничего не должно быть лишним.
Вот мы и добрались до конца начала середины...
Фикс 1: Валидация и инкапсуляция
Нашли TODO, зарытый на 136-й строке LyraInventoryManagerComponent.cpp.
Перевод: "Не хочу возиться с этим здесь, спрячьте куда-нибудь подальше."
Суть проблемы: Валидация (nullptr, проверка состояния Entry.Instance) выполняется прямо в компоненте. Логика...
И снова TODO в Lyra… 93-я строка LyraInventoryManagerComponent.cpp. Очередное вырубленное в камне послание от Epic Games: TODO: Using the actor instead of component as the outer due to UE-127172.
Всё ясно. Тодошка из отряда костылеобразных. Как говорится, «нет ничего более постоянного, чем...
Ох уж эти TODO от Epic Games... Они как забытые под диваном носки. Вроде лежат себе тихо, но каждый раз, проходя мимо, ты слышишь их злобный шёпот: «Вернись… Не оставляй меня здесь…». И вот, заглянув под этот пыльный диван, мы находим его — LyraInventoryItemDefinition.h 49-я строка. Там, как...
Epic Games снова кинули нас, оставив в LyraInventoryManagerComponent.cpp полуфабрикат. Очередной недоношенный ребёнок разработки — фильтры инвентаря.
Вот где зарыта собака: закомментированные строки с ULyraInventoryFilter и его производным ULyraInventoryFilter_HasTag. Код как бы есть, но его...