1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Разные настройки для игроков через пермишины

Тема в разделе "Разработка плагинов для новичков", создана пользователем Bopik_QYVI, 19 мар 2023.

Статус темы:
Закрыта.
  1. Автор темы
    Bopik_QYVI

    Bopik_QYVI Участник

    Баллы:
    31
    Имя в Minecraft:
    Bopik_QYVI
    Как можно узнать цифру из пермишина и есть ли он вообще, тоесть например из plugin.delay.[число] узнать [число] и как такие пермишены регистрировать если это надо?
     
  2. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Код:
        public double findPermissionNumber(Player player, String startPerm){
            return player
                    .getEffectivePermissions()
                    .stream()
                    .filter(info -> info.getPermission().startsWith(startPerm)
                            && NumberUtils.isParsable(info.getPermission().substring(startPerm.length())))
                    .mapToDouble(info -> Double.parseDouble(info.getPermission().substring(startPerm.length())))
                    .findFirst()
                    .orElse(0);
        }
    Передаешь туда player и plugin.delay.
    Но я бы не советовал так делать, постоянно перебирать все пермишены может быть ресурсо затратным,
    тут либо добавить кеширование пермишенов либо сделать в конфиге их настройку
    Допустим конфиг:

    Код:
    permissionsDelay:
      example.delay.one: 10
      example.delay.two: 100
    А потом просто пробегаешься по всем пермам которые есть в конфиге, и если игрок имеет это право можешь использовать значение из конфига
     
  3. Автор темы
    Bopik_QYVI

    Bopik_QYVI Участник

    Баллы:
    31
    Имя в Minecraft:
    Bopik_QYVI
    Спасибо, выберу второй вариант с конфигом, раз первый ресурсо затратный.
     
Статус темы:
Закрыта.

Поделиться этой страницей