Помогите как получить количество игроков которые находятся в ADVENTURE

AguRChek_TV

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
AguRChek_TV
как получить количество игроков которые находятся в ADVENTURE
 
Что то подобное, или циклом
Код:
Bukkit.getOnlinePlayers().stream().filter(player -> player.getGameMode() == GameMode.ADVENTURE).forEach(player -> {});
 
Код:
int size = 0;
            ArrayList<Player> PE = new ArrayList<Player>(); // с адвенчуром
            ArrayList<Player> PL = new ArrayList<Player>(); // все игроки
            PL.addAll(Bukkit.getOnlinePlayers());
            for(Player pe : PL){
                if(pe.getGameMode().equals(GameMode.ADVENTURE)) {
                        PE.add(pe);
                        size = PE.size();
                    }
                }

            p.sendMessage("" + size);

ну я либо тупенький, либо очень, но работает трогать кароч не буду.
 
Код:
int size = 0;
            ArrayList<Player> PE = new ArrayList<Player>(); // с адвенчуром
            ArrayList<Player> PL = new ArrayList<Player>(); // все игроки
            PL.addAll(Bukkit.getOnlinePlayers());
            for(Player pe : PL){
                if(pe.getGameMode().equals(GameMode.ADVENTURE)) {
                        PE.add(pe);
                        size = PE.size();
                    }
                }

            p.sendMessage("" + size);

ну я либо тупенький, либо очень, но работает трогать кароч не буду.
Не, ну это даже не смешно. Попробуй начать изучение языка, а не сразу бросаться на плагины. Вопросов у тебя будет намного меньше.
PHP:
int count = 0;
for (Player player : Bukkit.getOnlinePlayer())
    if (player.getGameMode() == GameMode.ADVENTURE) count++;
p.sendMessage(Integer.toString(count));
Тебе не нужно создавать новые коллекции(у тебя - ArrayList), у тебя уже есть Bukkit.getOnlinePlayers(), а для счёта игроков дак вообще достаточно, собственно, просто считать.
 
Не, ну это даже не смешно. Попробуй начать изучение языка, а не сразу бросаться на плагины. Вопросов у тебя будет намного меньше.
PHP:
int count = 0;
for (Player player : Bukkit.getOnlinePlayer())
    if (player.getGameMode() == GameMode.ADVENTURE) count++;
p.sendMessage(Integer.toString(count));
Тебе не нужно создавать новые коллекции(у тебя - ArrayList), у тебя уже есть Bukkit.getOnlinePlayers(), а для счёта игроков дак вообще достаточно, собственно, просто считать.

так не интересно братик
 
2 цикла ради одной операции, умно... Ух уж эти лямдодрочеры.
Осталось только понять где тут 2 цикла, ибо filter не терминальная операция. В жабе помоему вообще почти нет терминальных промежуточных Stream операций.
 
Осталось только понять где тут 2 цикла, ибо filter не терминальная операция. В жабе помоему вообще почти нет терминальных промежуточных Stream операций.
И чем же он тогда отбирает если не циклом?
 
Сделать какую-нибудь команду и через неё проходиться циклом.
PHP:
@Override

public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {

    if (sender instanceof Player) {

        Player p = (Player) sender;
        int a = 0;
       
        for(Player pl : Bukkit.getOnlinePlayers()) {
       
            if(p.getGameMode() == GameMode.ADVENTURE) {
           
                a += 1;
           
            }
       
        }
   
        p.sendMessage("Кол-во игроков = " + a);
   
    } else {

        sender.sendMessage("Вы не игрок!");

    }

    return false;

}
 
Последнее редактирование:
Сделать какую-нибудь команду и через неё проходиться циклом.
Код:
@Override

public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {

    if (sender instanceof Player) {

        Player p = (Player) sender;
        int a = 0;
             
        for(Player pl : Bukkit.getOnlinePlayers()) {
             
            if(p.getGameMode() == GameMode.ADVENTURE) {
                 
                a += 1;
                 
            }
             
        }
         
        p.sendMessage("Кол-во игроков = " + a);
         
    } else {

        sender.sendMessage("Вы не игрок!");

    }

    return false;

}
Этот код работает похоже на чистой магии и печеньках
 
Этот код работает похоже на чистой магии и печеньках
:D

Проходим циклом по каждому игроку, в теле цикла проверяем игрока на его игровой режим.
Если ADVENTURE, то прибавляем к a 1, выводим сообщение игроку после цикла. Профит.

Вообще, это то же, что написал ImDanix.
 
Последнее редактирование:
:D

Проходим циклом по каждому игроку, в теле цикла проверяем игрока на его игровой режим.
Если ADVENTURE, то прибавляем к a 1, выводим сообщение игроку после цикла. Профит.

Вообще, это то же, что написал ImDanix.
Присмотрись у кого ты геймод проверяешь
 
И чем же он тогда отбирает если не циклом?
Ничем, на то они и не терминальные операции, что преобразуют элемент по цепочке когда терминальная операция запрашивает его.
 
Назад
Верх