Русификация плагинов с использованием файлов-словарей

Архів · 2010 alibimag Статті 1 628

Архівний матеріал ya-cs.ru (2010). Російською. Плагіни й збірки можуть не працювати з ReHLDS та AMXX 1.10.

Русификация плагинов с использованием файлов-словарей

не буду показывать весь исходник, а покажу только самое основное

Для этого нужен будет AMX Mod X Studio

Итак… для того чтобы задекларировать словарь – добавляем строчку в процедуру plugin_init
public plugin_init()
{
…
…
register_dictionary(\”VirusNade.txt\”)
}

Все словари находятся в дирректории cstrike\\addons\\amxmodx\\data\\lang\\. Поэтому мы создаём текстовый файл VirusNade.txt именно в этой дирректории

Чтение из словаря происходит двумя параметрами и объявляется в тексте одним… Объявляется знаками \”%L\”(Предполагаю, что сокращённо от LANG).. Пример:

client_print(id,print_console,\”%L\” …
или:
client_print(id,print_console,\”Player %L has been kicked\” …

Что появляется вместо \”%L\”? Появляется значение, которое будет взято из словаря… Как я уже сказал чтение производится двумя параметрами: \”Язык\” и \”Параметр\”… Функция LANG_SERVER возвращает значение – язык, на котором играет сервер… Чтение:

\”%L\”, LANG_SERVER, \”GUMUS\”

Это значит что из словаря

VirusNade.txt будет считываться параметр GUMUS из раздела (Чтобы это понять – будет рассмотрен пример с Virus SmokeNade 1.3)

Далее просматриваем код на надписи на инглише… Хоп! Находим:

print( id, \”You\’re not allowed to buy an antidote!\” );

Заменяем на:

print( id, \”%L\”,LANG_SERVER,\”VN_NOT\” );

И в словаре пишем перевод:

[ru]
…
…
VN_NOT = Вы не можете купить антидот!
…
…

И так далее… Незабываем под теми же параметрами поставить и английские значения(Вдруг если сервер на инглише)

[en]
…
…
VN_NOT = You\’re not allowed to buy an antidote!
…
…

Схема заполнения словаря такова:

[]
=
=
=

И ещё, надо учитывать последовательность языков в словаре.. Может произойти ошибка и чтения словаря вернёт значение: ML_NOTFOUND: …

Последовательность такова:

[ru]
[en]
[de]
[sr]
[tr]
[fr]
[sv]
[da]
[pl]
[nl]
[es]
[bp]
[cz]
[fi]

Не знаю почему, но это рекомендованная последовательность языков… Если нет у вас значений на каком то языке, то можно их не писать

Коментарі 3

Ваш коментар

Коментар з’явиться після перевірки. E-mail не публікується.