- Баллы
- 76
- Имя в Minecraft
- Blc_Dragon
Доброго времени суток, форумчане (всех с нг). Я опять где то накосячил
Пытаюсь припилить нормальную локализацию.
есть некий enum - список фраз и дефолт значение.
метод юзаю такой
В классе Lang это объявлено так:
И в главном классе в onEnable() это выглядит так
Файл не null, тут получается что даже метод проверки на валидность пашет.
А поле lang вылезает в нулл, хотя булен спокойно устанавливается.
P.S Да я тот человек, который кодит в восемь(да не мск) утра первого января, т.к. мне в кайф
Пытаюсь припилить нормальную локализацию.
есть некий enum - список фраз и дефолт значение.
метод юзаю такой
Java:
private Phrases(String def){
if (Lang.useDefault){
PhraseStr = def;
}else {
Bukkit.getConsoleSender().sendMessage(this.toString());
if (Lang.lang == null){
Bukkit.getConsoleSender().sendMessage("Null at lang"); // методом этих [s]сраных[/s] проверок выясняется что null именно тут
}
PhraseStr=Lang.lang.getString(this.toString());
}
}
В классе Lang это объявлено так:
Java:
public static YamlConfiguration lang;
public static boolean useDefault = false;
public static void setLanguage(YamlConfiguration langconfig){
lang = langconfig;
}
public static void setDefault(boolean b){
useDefault = b;
}
И в главном классе в onEnable() это выглядит так
Java:
File corlang = new File(plugin.getDataFolder() + File.separator + "lang" + File.separator + plugin.getConfig().getString("lang") + ".yml");
if (!corlang.exists()) {
Bukkit.getConsoleSender().sendMessage(ChatColor.RED + "Can't find lang file " + ChatColor.GOLD + corlang.getName());
Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + "Using default lang file");
corlang = new File(plugin.getDataFolder() + File.separator + "lang" + File.separator + "en_US" + ".yml");
}
if (isCurrentLangFile(corlang)){
Lang.setLanguage(YamlConfiguration.loadConfiguration(corlang));
Lang.setDefault(false);
}
Файл не null, тут получается что даже метод проверки на валидность пашет.
А поле lang вылезает в нулл, хотя булен спокойно устанавливается.
P.S Да я тот человек, который кодит в восемь(да не мск) утра первого января, т.к. мне в кайф