Главный класс:
public class Permission extends JavaPlugin{
onEnable() {
getCommand("pex").setExecutor(new Commands(this));
getCommand("pex").setTabCompleter(new Commands(this));
}
}
Доп. класс:
public class Commands implements CommandExecutor, TabCompleter{
private Permission plugin;
public Commands(Permission plugin) {
this.plugin = plugin;
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
return true;
}
public void reloadPlugin(Player p) {
if( plugin.flagPermission(p.getName(), "pex.reload") ||
plugin.flagPermission(p.getName(), "pex.*") ||
plugin.flagPermission(p.getName(), "*")) {
String s = this.plugin.getConfig().getString("permission.reload");
p.sendMessage(s.replaceAll("&", "§"));
plugin.reloadConfig();
return;
}
p.sendMessage("§aУ вас недостаточно прав");
return;
}
@Override
public List<String> onTabComplete(CommandSender sender, Command cmd, String alias, String[] args) {
if (cmd.getName().equalsIgnoreCase("pex") && args.length == 1){
if (sender instanceof Player) {
List<String> newList = new ArrayList<>();
newList.addAll(plugin.getConfig().getStringList("Sites.Names"));
return newList;
}
}
return null;
}
}
Файл plugin.yml:
name: PermissionEx
main: permission.main.Permission
version: 1.0
commands:
pex:
usage: /pex reload