- Баллы
- 76
- Имя в Minecraft
- _TheZit445_
Привет. Я обращаюсь за помощью к вам.
Суть проблемы:
При выполнении команды в конфиг записывается строчка типа
NickName: Type (пример - _TheZit445_: demon)
И конфиг сохраняется. И далее всё работает как надо, всё действительно запомнилось и в процессе работы плагина всё стабильно, if (config.getString(player) == demon) выдаёт условие истинно.
То есть всё запоминается, да и в самом файле всё отражается. Но вот незадача, при последующем запуске сервера, сервер уже не считывает эти данные, то есть if (config.getString(player) == demon выдаёт ложь, хотя в файле по прежнему осталось эта строчка.
Вот и назрел вопрос, как же сделать эту загрузку, чтобы всё запоминалось и не приходилось каждый раз заново вводить команду на выбор класса. (Пишу простенький плагин на классы, например demon как уже было выше, практикуюсь).
А так же ещё есть проблемка, но не знаю на сколько она важна. Вот я написал код, и эклипс не говорит мне, что я ошибся, хотя в консоли выплывает ошибка, на сервере этой ошибки не видно, может это и есть ошибка связанная с сохранением. Кидаю код, для наглядности, может чего посоветуете.
Скрин ошибки в консоли
Я так то понимаю, что тут написано. Попытка зарегистрировать нерабочий метод onCommand(...) в классе Main. Но почему попытки, если он вроде как работает?
Давайте, жду помощи
Суть проблемы:
При выполнении команды в конфиг записывается строчка типа
NickName: Type (пример - _TheZit445_: demon)
И конфиг сохраняется. И далее всё работает как надо, всё действительно запомнилось и в процессе работы плагина всё стабильно, if (config.getString(player) == demon) выдаёт условие истинно.
То есть всё запоминается, да и в самом файле всё отражается. Но вот незадача, при последующем запуске сервера, сервер уже не считывает эти данные, то есть if (config.getString(player) == demon выдаёт ложь, хотя в файле по прежнему осталось эта строчка.
Вот и назрел вопрос, как же сделать эту загрузку, чтобы всё запоминалось и не приходилось каждый раз заново вводить команду на выбор класса. (Пишу простенький плагин на классы, например demon как уже было выше, практикуюсь).
А так же ещё есть проблемка, но не знаю на сколько она важна. Вот я написал код, и эклипс не говорит мне, что я ошибся, хотя в консоли выплывает ошибка, на сервере этой ошибки не видно, может это и есть ошибка связанная с сохранением. Кидаю код, для наглядности, может чего посоветуете.
Код:
FileConfiguration config = getConfig();
//Команды
String human = "human";
String demon = "demon";
String item = "item";
@SuppressWarnings("deprecation")
@EventHandler
public boolean onCommand(CommandSender s, Command cmd, String l, String args[]) {
String player = s.getName();
if (cmd.getName().equalsIgnoreCase("class")) {
if (args.length == 1) {
//HUMAN
if (human.equalsIgnoreCase(args[0])) {
if (config.getString(player) != human) {
config.set(player, human);
saveConfig();
s.sendMessage("§2[CreepClasses] §7Выбран класс §dHUMAN"); return true;
} else s.sendMessage("§2[CreepClasses] §7Ваш класс итак §dHUMAN"); return true;
}
//DEMON
if (demon.equalsIgnoreCase(args[0])) {
if (config.getString(player) != demon) {
config.set(player, demon);
saveConfig();
s.sendMessage("§2[CreepClasses] §7Выбран класс §dDEMON"); return true;
} else s.sendMessage("§2[CreepClasses] §7Ваш класс итак §dDEMON"); return true;
}
//RACE ITEM {
if (item.equalsIgnoreCase(args[0])) {
//HUMAN ITEM
if (config.getString(player) == human) {
ItemStack humanitem = new ItemStack(340);
ItemMeta humanmeta = humanitem.getItemMeta();
humanmeta.setDisplayName("§5Библия");
humanitem.setItemMeta(humanmeta);
Player p = s.getServer().getPlayer(player);
p.getInventory().addItem(humanitem);
s.sendMessage("§2[CreepClasses] §7Вам выдана §5БИБЛИЯ"); return true;
}
//DEMON ITEM
if (config.getString(player) == demon) {
ItemStack humanitem = new ItemStack(340);
ItemMeta humanmeta = humanitem.getItemMeta();
humanmeta.setDisplayName("§5Библия Сатаны");
humanitem.setItemMeta(humanmeta);
Player p = s.getServer().getPlayer(player);
p.getInventory().addItem(humanitem);
s.sendMessage("§2[CreepClasses] §7Вам выдана §5БИБЛИЯ САТАНЫ"); return true;
}
}
//main
} else {
s.sendMessage("");
s.sendMessage("§3=== §b[CreepClasses] §3===");
s.sendMessage("§b/class §3- вывод доступных команд");
s.sendMessage("§b/class §dhuman §3- выбрать класс §dHUMAN");
s.sendMessage("§b/class §ddemon §3- выбрать класс §dDEMON");
s.sendMessage("§b/class §eitem §3- получить предмет класса");
s.sendMessage("");
return true;
}
}
return false;
}
Скрин ошибки в консоли
Давайте, жду помощи
