Войти или зарегистрироваться

Помогите Покраска брони?

  • Автор темы Автор темы Bars
  • Дата начала Дата начала

Bars

Старожил
Девелопер
Пользователь
Баллы
173
An internal error has occured while attempting to perform this command
Java:
    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
        if (command.getName().equalsIgnoreCase("color")) {
            if (!(sender instanceof Player)) return true;
            Player p = (Player) sender;
            if (!(p.hasPermission("onlycore.color"))) {
                p.sendMessage("§4[OnlyCore] §cЯ не позволю вам сделать этого");
                return true;
            }

            String group = OnlyCore.perm.getPrimaryGroup(p);
            plugin.logger.info("Group: " + group);
            // Ошибка на этой строке:
            String color = plugin.getConfig().getString("groups." + group + ".color");
            String[] c = color.split(",");
            int r = 0, g = 0, b = 0;
            try {
                r = Integer.parseInt(c[0]);
                g = Integer.parseInt(c[1]);
                b = Integer.parseInt(c[2]);
            } catch (NullPointerException e) {
                p.sendMessage("§4[OnlyCore] §cПроизошла ошибка, сообщите администратору");
                e.printStackTrace();
            }

            for (ItemStack a : p.getEquipment().getArmorContents()) {
                if (a != null && a.getTypeId() >= 298 && a.getTypeId() <= 301) {
                    LeatherArmorMeta m = (LeatherArmorMeta) a.getItemMeta();
                    m.setColor(Color.fromRGB(r, g, b));
                    a.setItemMeta(m);
                }
            }

            p.sendMessage("§2[OnlyCore] §aБроня покрашена");
            return true;
        }

        return false;
    }
В консоли NullPointerException, строка с ошибкой в комментарии к коду
 
Java:
    public static Permission perm = null;
    // ...
    private boolean setupPermissions() {
        RegisteredServiceProvider<Permission> permissionProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.permission.Permission.class);
        if (permissionProvider != null) {
            perm = permissionProvider.getProvider();
        }

        return (perm != null);
    }
 
Java:
    public static Permission perm = null;
    // ...
    private boolean setupPermissions() {
        RegisteredServiceProvider<Permission> permissionProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.permission.Permission.class);
        if (permissionProvider != null) {
            perm = permissionProvider.getProvider();
        }

        return (perm != null);
    }
Как ты статической переменной дал значение в нестатичном методе?
 
Как ты статической переменной дал значение в нестатичном методе?
Это не важно, получение цвета префикса работает и с ним. Этот пример был в документации к Vault (но да, всё таки уберу статик). Проблема в первом посте
 
Назад
Верх