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

Помогите Как сделать цикл в цикле

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

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

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    У меня есть цикл, там я перебираю значения из конфига, потом я добавляю в массив значение из конфига и его перемешиваю... а ща пока List<Integer> lst = new ArrayList<>(Arrays.asList(integer));
    Collections.shuffle(lst); integer - это числа из конфига( к примеру 2 4 6 8 и т.д) я из перемешиваю, то есть 4 8 2 6(ну кароче рандомно) так вот, чтобы получить обратно числа из массива надо использовать for(Integer n : lst) { но есть проблема у меня есть цикл, для только чтобы перебирать значения конфига получается что-то вроде этого - for(Перебор конфига) { for(Integer n : lst) { у меня цикл в цикле
     
  2. hyndorik

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

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Крутая формулировка вопроса, мне нравится
     
  3. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    ну сложно описать
     
  4. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    Код:
        public void loadKits(Player p) {
            List<Integer> lst = new ArrayList<>();
            ConfigurationSection cs = Core.getPlugin().getConfig().getConfigurationSection("cases.");
            String item;
            String name;
            Material material;
            Location loc;
            int amount;
            int chance;
            if (cs != null) {
                Iterator<String> iter = cs.getValues(false).keySet().iterator();
                while(iter.hasNext()) {
                    String key = (String)iter.next();
                    CaseKit ck = new CaseKit(key);
                    HashMap<Enchantment, Integer> enchs;
                    for(String iter1 : Core.getPlugin().getConfig().getConfigurationSection("cases." + key + ".items.").getKeys(false)) {
                        item = iter1;
                        material = Material.getMaterial(Core.getPlugin().getConfig().getInt("cases."+key+".items."+item+".material"));
                        name = Core.getPlugin().getConfig().getString("cases." + key + ".items." + item + ".name");
                        amount = Core.getPlugin().getConfig().getInt("cases." + key + ".items." + item + ".poss");
                        chance = Core.getPlugin().getConfig().getInt("cases."+key+".items."+item+".chance");
                        loc = CaseManager.circle.get(Core.getPlugin().getConfig().getInt("cases."+key+".items."+item+".circle_poss"));
                        enchs = new HashMap<Enchantment, Integer>();
                   //ВОТ Я ДОБАВЛЯЮ В МАССИВ ЗНАЧЕНИЕ   lst.add(amount);
                  //  ТУТ Я ПЕРЕМЕШИВАЮ   Collections.shuffle(lst);
                  // ТЕПЕРЬ МНЕ НУЖНО ПОЛУЧИТЬ ЗНАЧЕНИЕ ИЗ МАССИВА
                  //for(Integer ЗНАЧЕНИЕ ИЗ МАССИВА) {
                     //ДАЛЬШЕ НЕ БУДЕТ ДОСТУПНО ЧАСТЬ КОД И ЦИКЛ БУДЕТ В ЦИКЛЕ 
                        List<String> enchList = Core.getPlugin().getConfig().getStringList("cases."+key+".items."+item+".enchantments");
                        if (!enchList.isEmpty()) {
                            Iterator<String> eni = enchList.iterator();
    
                            while(eni.hasNext()) {
                                String enchKey = (String)eni.next();
                                String[] enchSplit = enchKey.split("-");
                                enchs.put(Enchantment.getById(Integer.parseInt(enchSplit[0])), Integer.parseInt(enchSplit[1]));
                            }
                            String s = Core.getPlugin().getConfig().getString("cases."+key+".items."+item+".command");
                            if(s != null) {
                                cmd.add(s);
                            }
                        }
                        ck.getStands().add(CaseManager.create(p, ЗНАЧЕНИЕ ИЗ МАССИВА, name, loc, material, chance, enchs));
                    }
                }
            }
        }
     
  5. Slavkaa

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

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Прошел месяц, а он все собирает плагин на визуальную рулетку, когда alexandrage ее сделал за время < суток
     
  6. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    я рулетку уже давно сделал
     
  7. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    она работает хорошо тыр-пыры, но я делаю для нее обновление
     
  8. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    мне просто нужно чтобы предметы были не по-порядку, а раньше работало по-порядку (к примеру ДОНОР КРЕАТИВ АДМИН И Т Д ) а я хочу (Креатив донор админ)ну то есть рандом
     
  9. alexandrage

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

    Баллы:
    173
    Ага.
     
  10. Автор темы
    JolyHoska

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

    Баллы:
    76
    Имя в Minecraft:
    JolyNoska
    так вы поможете?
     

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