- Баллы
- 76
- Имя в Minecraft
- AguRChek_TV
как получить количество игроков которые находятся в ADVENTURE
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
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); ну я либо тупенький, либо очень, но работает трогать кароч не буду.
int count = 0;
for (Player player : Bukkit.getOnlinePlayer())
if (player.getGameMode() == GameMode.ADVENTURE) count++;
p.sendMessage(Integer.toString(count));
2 цикла ради одной операции, умно... Ух уж эти лямдодрочеры.

Не, ну это даже не смешно. Попробуй начать изучение языка, а не сразу бросаться на плагины. Вопросов у тебя будет намного меньше.
Тебе не нужно создавать новые коллекции(у тебя - ArrayList), у тебя уже есть Bukkit.getOnlinePlayers(), а для счёта игроков дак вообще достаточно, собственно, просто считать.PHP:int count = 0; for (Player player : Bukkit.getOnlinePlayer()) if (player.getGameMode() == GameMode.ADVENTURE) count++; p.sendMessage(Integer.toString(count));
Осталось только понять где тут 2 цикла, ибо filter не терминальная операция. В жабе помоему вообще почти нет терминальных промежуточных Stream операций.2 цикла ради одной операции, умно... Ух уж эти лямдодрочеры.
И чем же он тогда отбирает если не циклом?Осталось только понять где тут 2 цикла, ибо filter не терминальная операция. В жабе помоему вообще почти нет терминальных промежуточных Stream операций.
@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; }
Этот код работает похоже на чистой магии и печеньках

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