Вопрос Как реализовать время luckperms

BaySirak

Заблокирован
Сообщения
110
Плагин
Luckperms
Ядро сервера
  1. Purpur
Версия сервера
  1. 1.20
Как реализовать такое, стандартные плейсхолдеры не помогают( выводят полностью время, включая секунды), а надо как на скриншоте
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
Решение
Готово.

Код:
    @Override
    public String onRequest(OfflinePlayer player, @NotNull String spigotmcru) {
        User user = LuckPermsProvider.get().getUserManager().getUser(Objects.requireNonNull(player.getName()));
        for (Node node : user.getNodes()) {
            if (node.getKey().startsWith("group.") && Objects.nonNull(node.getExpiryDuration())) {
                return node.getExpiryDuration().toDays() + "д.";
            }
            else if (node.getKey().startsWith("group.") && !Objects.nonNull(node.getExpiryDuration())) {
                return "∞";
            }
        }
        return null;
    }
Готово.

Код:
    @Override
    public String onRequest(OfflinePlayer player, @NotNull String spigotmcru) {
        User user = LuckPermsProvider.get().getUserManager().getUser(Objects.requireNonNull(player.getName()));
        for (Node node : user.getNodes()) {
            if (node.getKey().startsWith("group.") && Objects.nonNull(node.getExpiryDuration())) {
                return node.getExpiryDuration().toDays() + "д.";
            }
            else if (node.getKey().startsWith("group.") && !Objects.nonNull(node.getExpiryDuration())) {
                return "∞";
            }
        }
        return null;
    }
огромное спасибо, поставлю пока это. Но все таки есть мелкие недоработки: когда у игрока нет привилегии я бы предпочел писать "Нету", а там пишется знак бесконечности. Также дни кривовато считаются, выдал на 10 дней - отображается на 9, я понял, как это работает и почему, но все таки лучше было бы округлять. Еще раз спасибо.
 
огромное спасибо, поставлю пока это. Но все таки есть мелкие недоработки: когда у игрока нет привилегии я бы предпочел писать "Нету", а там пишется знак бесконечности. Также дни кривовато считаются, выдал на 10 дней - отображается на 9, я понял, как это работает и почему, но все таки лучше было бы округлять. Еще раз спасибо.
Это не криво, это математика. Время идёт 4 дня превращается в 3 дня 23 часа 59 минут
 
Назад
Сверху Снизу