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

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

Онлайн

Сейчас на сайте: 47
Гостей: 46

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

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

Mount & Blade - Эпоха турниров (Warband) 1.174
Tijuuan, Вчера, 06:22
Приветствую Всех Какая то проблема появилась(Или она и была раньше,может я не знаю) в русификаторе...
MOD WW II China War of Elders
сигма, 19 мая 2024 19:49
Кто нибудь подскажите как решить ошибку unable to get technique specular_alpha_skin....
MOD Warsword Conquest Winds of Magic Edition Beta
Yang Kai, 19 мая 2024 13:01
LoudPanther,Русификатор на Orc Edition  обновился еще в Сентябре, а    А фикс багов выше для Orc...
Гайд на MOD WIND OF THE WAR - NEW ERA 74FIX8
Yang Kai, 19 мая 2024 12:54
Lostoul,Здесь мертво всё Да и какой смысл играть на древней версии? На данный момент самая новая...
MOD War in the world of magic. Era_Dragons
Lostoul, 17 мая 2024 03:50
Есть тут ещё кто живой? я начал играть в этот мод, но возникла проблема в том что я не могу понять...
Гайд на MOD WIND OF THE WAR - NEW ERA 74FIX8
Lostoul, 17 мая 2024 03:47
Есть тут ещё кто живой? я начал играть в этот мод, но возникла проблема в том что я не могу понять...
Помогите найти мод! (все вопросы с подборкой модификаций - сюда)
Deznortennus, 14 мая 2024 18:34
Tijuuan,их много. самый базовый - diplomacy или diplomacy litdum.4 . Также remasterd. знаю еще...
MOD Warsword Conquest Winds of Magic Edition Beta
Джаддар, 13 мая 2024 17:27
Здравствуйте, этот мод использовать как сабмод к "warsword conquest prewiew mod",или же можно...
MOD East 1135
Lossarin, 10 мая 2024 12:11
iskanderzp, в том то и дело, что в других модах этой проблемы нет. только здесь, то мое же...