Current time: 23.03.2024, 01:51 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Создание скриптов с поддержкой мультиязычности
» SN:T + json
Author Message
ElfbI Offline

Posts: 325
Post: #16

Berserker, про экранирование - лучше написать в примере в шапке, мне кажется. Для меня термин не очень понятный. Как перевод строки экранировать, например?


The dreams you kill will break your heart
22.02.2020 03:37
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3880
Post: #17

\n - перевод строки
\t - табулятор
\" -двойная кавычка
{ "ключ" : "первая строка\nвторая строка\n{\"желтая\" строка}" }


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
22.02.2020 03:40
Visit this user's website Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #18

Algor, Berserker, спасибо за помощь, буду пытаться)


The dreams you kill will break your heart
22.02.2020 03:43
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #19

То, что я раньше принял за срабатывание, оказалось родным окном ящика, т к шанс на новый ящик 66%
Я пишу следующее и получаю пустой вопрос. Редактировать lua без разницы чем? Я уже не знаю, что еще.


Code:
{
  "ep": {
    "open_box_q": "{Ящик Пандоры.}\n\n Вы хотите открыть ящичек?"
  }
}


The dreams you kill will break your heart
22.02.2020 04:06
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #20

ElfbI, а мод включён? Скинь весь архив мода, пожалуйста. https://dropmefiles.com


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
22.02.2020 04:10
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #21

Berserker, https://dropmefiles.com/DHN8a

Berserker, все должно быть ок. Я вставлял тестовое сообщение в переменную перед выводом. Оно отображается. строчка 61 - пытаюсь получить ключ.

Блин, мне как-то неловко теперь - я хотел скрипт привести в нужное состояние перед опубликованием. Я не помню, он может ссылаться на внешний код:



The dreams you kill will break your heart
(This post was last modified: 22.02.2020 04:31 by ElfbI.)
22.02.2020 04:13
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #22

ElfbI, json файл нужно редактировать и сохранять в редакторе, умеющим работать с кодировкой UTF-8. Например через Tools\Era_Editor_Sublime\sublime text.exe.
File - Save with encoding - UTF-8. У тебя кодировка Windows-1251 (кириллица). Вероятно, компонент работы с json порсто заменяет некорректные строки на пустые.

ElfbI, компонент json жутко молчаливый на ошибки. Даже типа не возвращает.
В Sublime Text, если используешь, ctrl + shift + p, install package, pretty json. После чего при сохранении json будут показываться ошибки. И по ctrl + alt + j.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
22.02.2020 05:33
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #23

Berserker, спасибо, наконец-то работает. Сколько я нервов на это потратил.


The dreams you kill will break your heart
22.02.2020 15:49
Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #24

Можно для SN:T использовать отрицательные z?


или



The dreams you kill will break your heart
(This post was last modified: 06.09.2020 02:07 by ElfbI.)
06.09.2020 02:05
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4333
Post: #25

ElfbI, можно, но надо так
!!SN:T^jsontext.tex1^/?z-1;


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
06.09.2020 02:11
Visit this user's website Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #26

ElfbI, если верить справке (не знаю, кто там инфу готовил), то нельзя (до 2.9.14 включительно)
Quote:Все команды ERA могут работать со следующими элементами ERM:
  • Переменными y+, v, w, x, z+, f..t, e;

и нет синтаксиса set Yes
Quote:SN:T^имя^/?z#/#1/?$1/#2/?$2...
06.09.2020 02:13
Visit this user's website Find all posts by this user Quote this message in a reply
ElfbI Offline

Posts: 325
Post: #27

Bes, daemon_n,

про синтаксис установка/получение вопросов нет, установка очень даже работает в моем моде пандора, я просто некорректно написал пример
только про переменные для эра3.


The dreams you kill will break your heart
(This post was last modified: 06.09.2020 02:20 by ElfbI.)
06.09.2020 02:16
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4333
Post: #28

(14.09.2020 23:38)Berserker Wrote:  Переводы в json сделаны тоже модульно. Если в eng.json есть строки, которых нет в rus.json, то они будут использоваться. То есть худший сценарий — часть строк на английском, но обновлением можно пользоваться, не дожидаясь релиза локализации.

Berserker, а как ты планируешь сделать русификатор, если не перекрытием файла? Json хоть и модульный внутри, но на деле это всего лишь 1 файл.


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
14.09.2020 23:58
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #29

daemon_n, представь себе большой словарь вида ключ => значение, в который можно только добавлять, но не перезаписывать пары.
Первым загрузятся все ключ => значения из rus.json (более приоритетный мод).
Далее пойдут грузится пары из eng.json. Совпадающие ключи будут проигнорированы, а уникальные новые добавлены.
В результате разработчик можно сколько угодно добавлять новых ключей. Все они будут работать на оригинальном языке.

Если же ты назвал оба файла json одинаково, то будет полностью перекрыт сам файл. Это значит, что английская версия будет полностью игнорироваться, что не позволит загружать для неё обновления без обновления русификатора.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.09.2020 00:08
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4333
Post: #30

Berserker, а как заставить читаться русский файл после английского, раз у них разные имена? К тому же ключи не только добавляются, но и изменяются. Я знаю, как работает текст в json, потому сделал свой мод с 3 разными языками. (3 разных файла)


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
15.09.2020 01:15
Visit this user's website Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group