Моддинг в 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

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

Онлайн

Сейчас на сайте: 100
Гостей: 98

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

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

MOD Twilight of the sun king / Закат Короля- Солнце
kitel, 15 января 2025 19:34
про города имею ввиду столицу...
MOD Twilight of the sun king / Закат Короля- Солнце
kitel, 15 января 2025 19:13
а как в город попасть и куда патч ставить?...
Флудилка V3
vadmin007, 14 января 2025 22:49
Добрый вечер, не играл в mount and blade несколько лет. Решил вот bannerlord запустить, настройки...
HAN XIONGNU WARS - ПЕРЕВОД НА РУССКИЙ ЯЗЫК
SimbaD, 13 января 2025 10:22
Здесь просто русификатор,а купить игру,судя по всему, можно здесь,вверху есть...
MOD NOVA AETAS (ОБСУЖДЕНИЕ)
Oleg konrad20, 10 января 2025 23:29
Здравствуйте я бы хотел к вам обратится за помощью я незнаю почему у меня каждую неделю со всеми...
HAN XIONGNU WARS - ПЕРЕВОД НА РУССКИЙ ЯЗЫК
Виктор Паскарь, 8 января 2025 00:18
narshadarss, как качать с вашего сайта не шарю что делать где кнопки скачать Как скачать моды с...
[SUBMOD] - 1257AD Reloaded (1257AD - Enhanced Edition)
555qap, 5 января 2025 16:02
у кого есть 1257 ad для версий 1.173?...
MOD 1794: Kosciuszko Uprising (Восстание Костюшко)
kitel, 3 января 2025 19:43
а как русик нормально поставить? я уже вкурсе что тех файлов что вы указывали ранее нету в моде...
MOD Diplomacy 4.litdum
Владимир Кос, 3 января 2025 01:04
SunRise, ждал твоего клиента пару лет. Как же я ненавидел эти пластиковые морды из мода....