• Страница 1 из 1
  • 1
Русификация плагинов с использованием файлов-словарей.
Дата: Воскресенье, 01.07.2012, 17:48 | Сообщение # 1
OFF
Старичок
22Сообщения:
0 Награды:
5
Не буду показывать весь исходник, а покажу только самое основное.

Для этого нужен будет 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]

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

  • Страница 1 из 1
  • 1
Поиск: