@amw202020
Плагин конечно бесполезный, но можно я повредничаю и покритикую?
Код:
@EventHandler
public class MainClass extends JavaPlugin implements Listener {
public void onEnable() {
this.getServer().getPluginManager().registerEvents(this, this);
.....................................
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
.....................................
Тут не ни о какой обработке событий речи не идёт. onCommand - это просто метод класса JavaPlugin, который Вы переопределяете и всё (вообще правильно аннотацию
@Override вместое
@EventHandler поставить, но и без неё будет работать в данном случае).
Код:
File file = new File(this.getDataFolder(), "config.yml");
if(!file.exists()) {
this.getConfig().set("title", "§f[§cPexOp§f] ");
this.getConfig().set("message", "Вам успешно выдали OP!");
this.getConfig().set("noperm", "У вас нет прав чтобы использовать это!");
this.saveConfig();
} else {
this.saveConfig();
YamlConfiguration var2 = YamlConfiguration.loadConfiguration(new File(this.getDataFolder(), "config.yml"));
}
Тут у Вас смесь, то Вы используете getConfig(), создаете новый файл. Кстати, чтобы не проверять наличие файла config.yml (и вообще не переживать по этому поводу), можно просто делать что-то вроде
Код:
title = this.getConfig().getTitle("title", "§f[§cPexOp§f] ");
Здесь "§f[§cPexOp§f] " - это будет значение по умолчанию, которое будет присваиваться переменной title, в случае отсуствия поля "title" в конфиге.
Ну и вообще при работе с config.yml используйте это getConfig(), меньше возьни с открытием, созданием файла и т.п.
Код:
.................
this.getLogger().info("[PexOP] was Enabled");
.................
this.getLogger().info("[PexOP] was Disabled");
.................
Это вообще не нужно. Сообщения и так пишутся в лог самим сервером - вы их дублируете просто.
Код:
Player p = (Player)sender;
А что если команду запустили из консоли? Я понимаю, что этого плагина это маловероятно, но тем не менее.
Код:
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
...............
return false;
}
Команда, кроме текста, который Вы задумали, всегда выводит ещё и сообщение "данная команда не существует" (ну или как он там звучит, я не помню),