exphines
ʏᴏᴜ ᴀɪɴ'ᴛ ᴋᴀᴡᴀɪɪ
Рассмотрим создание языкового файла, для упрощения перевода вашего мода. Да и вообще для русифицирования.
Создайте файл и назовите как душе угодно. В моем случае это будет LanguageRs.java. Код приведен ниже. Просто скопируйте, потом по мере необходимости переделаете под себя.
Создайте файл и назовите как душе угодно. В моем случае это будет LanguageRs.java. Код приведен ниже. Просто скопируйте, потом по мере необходимости переделаете под себя.
Создайте новый файл, назовите его rs_RU.lang. Каждое кодовое название слова с переводом, должно находиться на новой строке.package net.minecraft.src;
import java.io.IOException;import java.util.Properties;
publicclassLanguageRs{
privatestaticLanguageRs instance =newLanguageRs();
publicstaticLanguageRs languagers =LanguageRs.getInstance();
privateProperties translateTable;
privateLanguageRs()
{
translateTable =newProperties();
try
{
translateTable.load((net.minecraft.src.LanguageRs.class).getResourceAsStream("/lang/rs_RU.lang"));
}
catch(IOException ioexception)
{
ioexception.printStackTrace();
}
}
publicstaticLanguageRs getInstance()
{
return instance;
}
publicString translateKey(String s)
{
return translateTable.getProperty(s, s);
}
publicString translateKeyFormat(String s,Object aobj[])
{
String j = translateTable.getProperty(s, s);
returnString.format(j, aobj);
}
publicString translateNamedKey(String s)
{
return translateTable.getProperty((newStringBuilder()).append(s).append(".name").toString(),"");
}}
Далее в файле, в котором требуется перевод (mod_rs к примеру), создаем новую переменную.rs.atm =Банкомат
rs.cd =Кредитнаякарта
Ну и теперь пишем не имя блока, а создаем ссылку.LanguageRs languagers =LanguageRs.getInstance();
ModLoader.addName(atm, languagers.translateKey("rs.atm"));