Моддинг в Bannerlord: MBTextManager


Моддинг в Bannerlord: MBTextManager 

Оригинал статьи - https://docs.bannerlordmodding.com/_csharp-api/localization/MBTextManager.html

Общая информация

MBTextManager - это общедоступный статический класс, который используется для локализации внутриигровых текстов. Он содержит логику обработки текста игры и может использоваться для установки глобальных текстовых переменных. Вы можете найти больше информации о текстовых переменных здесь.


Установка глобальных текстовых переменных

Вы можете установить текстовую переменную в MBTextManager, используя метод SetTextVariable:

MBTextManager.SetTextVariable(tag, textObject);

У него есть несколько перегруженных версий с разными типами аргументов значения.

Любая переменная, установленная в MBTextManager, будет использоваться игровым текстовым процессором для любого TextObject, как если бы она была определена для самого TextObject:

StringHelpers.SetCharacterProperties("CURRENT_LIEGE", forLord.MapFaction.Leader.CharacterObject, null, null, false);
StringHelpers.SetCharacterProperties("NEW_LIEGE", newLiege.CharacterObject, null, null, false);
...
persuasionTask2.SpokenLine =
      new TextObject("{=CymOFgzv}I gave an oath to {CURRENT_LIEGE.LINK} - but {?LORD.GENDER}her{?}his{\\?} disregard for the common people of this realm does give me pause.");

В этом примере метод StringHelpers.SetCharacterProperties используется для сохранения определенных свойств символа в массиве переменных MBTextManager, что делает их глобальными. Затем они используются для формирования нового объекта TextObject для строки диалога с убеждением.

Обратите внимание, что экземпляр TextObject не должен иметь каких-либо определенных атрибутов (собственных текстовых переменных), чтобы иметь доступ к глобальным переменным.


TextContext 

Любая переменная, для которой установлено значение MBTextManager, сохраняется в закрытом поле только для чтения с именем TextContext. TextContext служит в качестве расширенного словаря текстовых переменных и функций (требуется дополнительная информация по этому вопросу) и очищается только в Campaign.OnDestroy(). Имейте в виду, что текстовые переменные можно свободно переписать в любое время с новыми значениями.






- используйте эту кнопку если вы обнаружили ошибку/искажение содержимого/отсутствие контента в новости или если хотите сообщить администрации о выходе новой версии мода и т.п.

Комментариев 0

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн

Сейчас на сайте: 132
Гостей: 131

Пользователи: 
- отсутствуют

Последние комментарии

ГАЙД ПО ПРОХОЖДЕНИЮ МОДА PERISNO 0.8
Комсорг, 14 апреля 2025 18:21
Привет всем, если работать фрилансером до какого уровня может тебя повысить лорд? До того что в...
MOD Napoleonic Wars Functional/UI pack
GLUA1649, 10 апреля 2025 12:46
кто-то может скинуть мод?...
MOD wind of the war - New Era 74fix8
epilect, 9 апреля 2025 13:41
gadgi, https://commando.com.ua/mb/modswarband/4813-mod-tian-xuan.html посмотри здесь,правда не...
MOD Троецарствие финал (Three Kingdoms 2.76)
Lossarin, 9 апреля 2025 05:52
все я разобрался, проблема в версии игры была....
MOD XsangoX
Lossarin, 9 апреля 2025 05:39
походу все файлы сломались, ни где нет файлов мода ...
MOD Троецарствие финал (Three Kingdoms 2.76)
Lossarin, 9 апреля 2025 05:21
ребята подскажите - поставил на варбанд 1.174 - поставил перевод. ну невозможно, все сбивается...
MOD wind of the war - New Era 74fix8
gadgi, 8 апреля 2025 23:29
Всем доброго здравия. Может вопрос не по теме мода, но кто-нибудь может вкурсе где можно скачать...
MOD Tianchao
Tomatik, 4 апреля 2025 22:55
Помогите 7 картин нашел 4 из которых багованые в правене не нашел все стенны оббегал ничего...
MOD Honour&Glory (Честь и Слава)
Радомир, 28 марта 2025 23:40
В дискорде меня нет. Но разработчики и тут появляются. Поэтому написал коммент здесь. Да, кстати,...