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

GUI со страницами

Тема в разделе "Разработка плагинов для новичков", создана пользователем Akultist, 25 май 2018.

  1. Автор темы
    Akultist

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

    Баллы:
    46
    Здравствуйте, мне нужно сделать gui со страницами игроков. Как это можно реализовать?
     
  2. HunterGaming

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

    Баллы:
    96
    Имя в Minecraft:
    sqdFendy
  3. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Как то так.

    Код:
        public static Menu subMenu(List<List<ItemStack>> lists, int i, String name, ItemStack next) {
            if (i > lists.size() || i < 1) {
                i = 1;
            }
            List<ItemStack> stack = new ArrayList<ItemStack>(lists.get(i - 1));
            ItemMeta meta = next.getItemMeta();
            meta.setDisplayName("Next");
            meta.setLore(Arrays.asList(new String[] { String.valueOf(i) }));
            next.setItemMeta(meta);
            stack.add(next);
            return new Menu(stack, name);
        }
    
        public static void menu(InventoryClickEvent e, List<List<ItemStack>> lists) {
            if (e.getInventory().getHolder() instanceof Menu) {
                e.setCancelled(true);
                ItemStack item = e.getCurrentItem();
                if (item == null)
                    return;
                ItemMeta meta = item.getItemMeta();
                if (meta == null)
                    return;
                if (!meta.hasDisplayName())
                    return;
                if (!meta.hasLore())
                    return;
                if (meta.getDisplayName().equals("Next")) {
                    ItemStack next = new ItemStack(Material.GLASS, 1);
                    int cur = Integer.parseInt(meta.getLore().get(0));
                    Menu menu = subMenu(lists, cur + 1, "Menu", next);
                    e.getWhoClicked().openInventory(menu.getInventory());
                }
            }
        }
     

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