FOnline Engine
Current master GitHub
Документация Docs/ru/reference/text-format/proto-text.md

Текст прототипов

Сгенерированный справочник. Не редактируйте его напрямую. Обновите BuildTools/TextFormatInterface.json, затем выполните python BuildTools/docs_text_format.py --write.

Индекс Синтаксис Языки Текст прототипов Runtime Проверка Канонический JSON Руководство

Локализованный текст прототипа задаётся внутри любой допустимой секции прототипа:

[ProtoItem]
$Name = LaserRifle
$Text engl Name = Laser rifle
$Text engl Desc Short = Compact description
$Text russ Name = Localized name

Полный ключ состоит из сгенерированного пакета, id прототипа, необязательного Key2 и необязательного Key3. Если язык опущен, выбирается первый настроенный элемент BakeLanguages.

Генерируемые пакеты

Items, Critters, Maps, Locations, Protos

Стабильный ID Правило Требование Причина Источник
text-format.proto.syntax Ключ текста прототипа Текст прототипа использует $Text [Language] [Key2] [Key3] = Value и принимает не более четырёх токенов ключа вместе с $Text. Id прототипа становится Key1, а необязательные последующие токены становятся Key2 и Key3. Source/Tools/ProtoTextBaker.cpp
text-format.proto.default-language Опущенный язык Если токен языка опущен, поле $Text принадлежит первому элементу Baking.BakeLanguages. С исходными текстовыми пакетами используется один упорядоченный контракт базового языка. Source/Tools/ProtoTextBaker.cpp
text-format.proto.escape-decoding Декодирование escape-последовательностей Значения $Text прототипов проходят через StringEscaping::DecodeString до добавления в текстовый пакет. Последовательности наподобие \n становятся настоящими символами новой строки в запечённом значении. Source/Tools/ProtoTextBaker.cpp, Source/Tests/Test_ProtoTextBaker.cpp
text-format.proto.inheritance Унаследованный текст Родительские поля $Text рекурсивно объединяются до полей потомка. Потомок наследует отсутствующие точные текстовые ключи, а его собственное присваивание точного ключа заменяет унаследованное значение. Source/Tools/ProtoTextBaker.cpp
text-format.proto.pack-routing Маршрутизация генерируемого пакета Прототипы Item, Critter, Map и Location направляются в Items, Critters, Maps и Locations; другие неэкспортируемые entity или fixed type с HasProtos направляются в Protos. Эти пять имён образуют переиспользуемый набор текстовых пакетов прототипов, генерируемых Engine. Source/Tools/ProtoTextBaker.cpp
text-format.proto.complete-output-set Полный набор выходов ProtoTextBaker создаёт все пять генерируемых пакетов для каждого настроенного языка, включая пустые пакеты. Форма бинарного выхода детерминирована для разных проектов и наборов языков. Source/Tools/ProtoTextBaker.cpp
text-format.proto.intersections Межтиповые пересечения Два исходника прототипов не могут создать один полный ключ в одном сгенерированном пакете и языке. Пересечения считаются ошибками и прерывают запекание текста прототипов. Source/Tools/ProtoTextBaker.cpp
text-format.proto.unsupported-language Неподдерживаемый язык прототипа Для языка $Text, отсутствующего в Baking.BakeLanguages, выводится предупреждение, и поле пропускается. Локализованный текст прототипов следует настроенному набору выходных языков. Source/Tools/ProtoTextBaker.cpp
Введите запрос.